summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2014-01-01 10:29:44 -0600
committerGregory Nutt <gnutt@nuttx.org>2014-01-01 10:29:44 -0600
commitebb35cf4af9c395e12f1a56a0d68655f50674168 (patch)
tree1341e3c1ef856c5438eb3c1f52c1ffc3d8b8274e
parent4274c0fe3987e8c22176d249581888ff6da5db92 (diff)
downloadnuttx-ebb35cf4af9c395e12f1a56a0d68655f50674168.tar.gz
nuttx-ebb35cf4af9c395e12f1a56a0d68655f50674168.tar.bz2
nuttx-ebb35cf4af9c395e12f1a56a0d68655f50674168.zip
Make sure that the Z16F build still builds and runs
-rw-r--r--nuttx/configs/pcduino-a10/README.txt30
-rw-r--r--nuttx/configs/z16f2800100zcog/ostest/README.txt35
-rw-r--r--nuttx/configs/z16f2800100zcog/ostest/defconfig172
-rwxr-xr-xnuttx/configs/z16f2800100zcog/ostest/ostest.zdsbak238
-rw-r--r--nuttx/configs/z16f2800100zcog/ostest/ostest.zfpproj2
-rw-r--r--nuttx/include/nuttx/sched.h2
-rw-r--r--nuttx/include/sys/types.h2
-rw-r--r--nuttx/sched/task_setup.c24
8 files changed, 460 insertions, 45 deletions
diff --git a/nuttx/configs/pcduino-a10/README.txt b/nuttx/configs/pcduino-a10/README.txt
index 28c51a0f3..f39f3eecd 100644
--- a/nuttx/configs/pcduino-a10/README.txt
+++ b/nuttx/configs/pcduino-a10/README.txt
@@ -101,6 +101,7 @@ Contents
- Serial Console
- LEDs
- Buttons
+ - JTAG
- Booting NuttX from an SD card
pcDuino v1 Connectors
@@ -250,6 +251,35 @@ Buttons
SW4 Key_Home LCD1_D18/ATAD14/KP_OUT0/SMC_SLK/EINT18/CSI1_D18/PH18
SW5 Key_Menu LCD1_D19/ATAD15/KP_OUT1/SMC_SDA/EINT19/CSI1_D19/PH19
+JTAG
+====
+
+ A. I didn't get success testing J-Link with pcDuino, it is reading TDI
+ always as 1.
+
+ I think the main problem is because pcDuino JTAG doesn't have RESET
+ (no trst or srst). I tried to connect the JTAG reset to Power_Reset
+ of pcDuino, but it didn't work.
+
+ B. Notice that the OlinuxIno JTAG does have a reset line called RESET_N.
+ But it is nothing special. It just connects to the RESET# pin C14 on
+ the A10. The pcDuino also brings out the RESET# on several connectors.
+
+ So it seems like you could get the reset line if you need it, just not
+ from the set of JTAG pads.
+
+ A. I discovered the issue in the JTAG, it was not working because
+ JTAG_SEL was not tied to GND.
+
+ I compared the Olimex schematic with pcDuino and noticed there is a
+ R64 resister that is not placed in the board.
+
+ It was a little bit difficult to find this resistor, because it is
+ "hidden" among the capacitors in the bottom of the board.
+
+ After short circuiting the resistor PADs the JTAG started to work,
+ well, JLinkExe now recognize it, but OpenOCD is not working yet.
+
Booting NuttX from an SD card
=============================
diff --git a/nuttx/configs/z16f2800100zcog/ostest/README.txt b/nuttx/configs/z16f2800100zcog/ostest/README.txt
index 214c3a9f1..ad4a1b1cd 100644
--- a/nuttx/configs/z16f2800100zcog/ostest/README.txt
+++ b/nuttx/configs/z16f2800100zcog/ostest/README.txt
@@ -1,12 +1,37 @@
README.txt
^^^^^^^^^^
-ostest.zfpproj is a simple ZDS-II project that will allow you
- to use the ZDS-II debugger. Before using, copy the following
- files from the toplevel directory:
+OSTEST Project
+--------------
+
+ostest.zfpproj is a simple ZDS II - ZNEO 5.0.1 project that will allow you
+ to use the ZDS-II debugger. Before using, copy the following files from
+ the toplevel directory:
- nuttx.hex, nuttx.map, nuttx.lod
+ nuttx.hex, nuttx.map, nuttx.lod
to this directory as:
- ostest.hex, ostest.map, ostest.lod
+ ostest.hex, ostest.map, ostest.lod
+
+ostest.zdzbak is a project file for an older ZDS-II 4.0 version (There is no
+ difference in the files other than for some versioning information at the
+ top).
+
+Loading and Executing Code
+--------------------------
+
+1. Copy the files to this directory as described above
+2. Connect the ZiLOG XTools USB debugger.
+3. Install the USB driver from the ZDS-II device_drivers directory
+4. Start ZDS-II and load the ostest.zfpproj project
+5. In the debug tab, connect to the debugger
+6. In the debug tab, load code, reset, and go
+
+Hmmm... it appears that the code does not run if started by a hardware reset.
+It runs only when started via the debugger. What is up with that?
+
+Console Output
+--------------
+
+OS test results will be provided on the serial console at 57600 8N1 baud.
diff --git a/nuttx/configs/z16f2800100zcog/ostest/defconfig b/nuttx/configs/z16f2800100zcog/ostest/defconfig
index 73cc42e40..7ad42d9f2 100644
--- a/nuttx/configs/z16f2800100zcog/ostest/defconfig
+++ b/nuttx/configs/z16f2800100zcog/ostest/defconfig
@@ -43,8 +43,9 @@ CONFIG_WINDOWS_CYGWIN=y
# Debug Options
#
CONFIG_DEBUG=y
+# CONFIG_ARCH_HAVE_STACKCHECK is not set
+# CONFIG_ARCH_HAVE_HEAPCHECK is not set
# CONFIG_DEBUG_VERBOSE is not set
-# CONFIG_SYSLOG_ENABLE is not set
#
# Subsystem Debug Options
@@ -55,13 +56,17 @@ CONFIG_DEBUG=y
# CONFIG_DEBUG_LIB is not set
# CONFIG_DEBUG_BINFMT is not set
# CONFIG_DEBUG_GRAPHICS is not set
+# CONFIG_DEBUG_IRQ is not set
#
# Driver Debug Options
#
+# CONFIG_DEBUG_LEDS is not set
# CONFIG_DEBUG_ANALOG is not set
-# CONFIG_DEBUG_DMA is not set
+# CONFIG_DEBUG_GPIO is not set
+# CONFIG_DEBUG_AUDIO is not set
# CONFIG_DEBUG_SYMBOLS is not set
+# CONFIG_DEBUG_NOOPT is not set
#
# System Type
@@ -79,7 +84,6 @@ CONFIG_ARCH_Z16=y
# CONFIG_ARCH_Z80 is not set
CONFIG_ARCH="z16"
CONFIG_ARCH_CHIP="z16f"
-CONFIG_BOARD_LOOPSPERMSEC=1250
#
# Z16 Configuration Options
@@ -104,16 +108,29 @@ CONFIG_Z16F_UART1=y
# Architecture Options
#
# CONFIG_ARCH_NOINTC is not set
+# CONFIG_ARCH_VECNOTIRQ is not set
# CONFIG_ARCH_DMA is not set
+CONFIG_ARCH_HAVE_IRQPRIO=y
+# CONFIG_CUSTOM_STACK is not set
+# CONFIG_ADDRENV is not set
+# CONFIG_ARCH_HAVE_VFORK is not set
CONFIG_ARCH_IRQPRIO=y
# CONFIG_ARCH_STACKDUMP is not set
CONFIG_ENDIAN_BIG=y
+# CONFIG_ARCH_HAVE_RAMFUNCS is not set
+# CONFIG_ARCH_HAVE_RAMVECTORS is not set
#
# Board Settings
#
-CONFIG_RAM_START=
-CONFIG_RAM_SIZE=65536
+CONFIG_BOARD_LOOPSPERMSEC=1250
+# CONFIG_ARCH_CALIBRATION is not set
+
+#
+# Interrupt options
+#
+# CONFIG_ARCH_HAVE_INTERRUPTSTACK is not set
+# CONFIG_ARCH_HAVE_HIPRI_INTERRUPT is not set
#
# Boot options
@@ -125,6 +142,12 @@ CONFIG_BOOT_RUNFROMFLASH=y
# CONFIG_BOOT_COPYTORAM is not set
#
+# Boot Memory Configuration
+#
+CONFIG_RAM_START=0x0
+CONFIG_RAM_SIZE=65536
+
+#
# Board Selection
#
CONFIG_ARCH_BOARD_Z16F2800100ZCOG=y
@@ -144,10 +167,13 @@ CONFIG_ARCH_LEDS=y
#
# RTOS Features
#
+# CONFIG_BOARD_INITIALIZE is not set
CONFIG_MSEC_PER_TICK=10
+# CONFIG_SYSTEM_TIME64 is not set
CONFIG_RR_INTERVAL=200
# CONFIG_SCHED_INSTRUMENTATION is not set
CONFIG_TASK_NAME_SIZE=0
+# CONFIG_SCHED_HAVE_PARENT is not set
# CONFIG_JULIAN_TIME is not set
CONFIG_START_YEAR=2012
CONFIG_START_MONTH=11
@@ -158,8 +184,8 @@ CONFIG_DEV_CONSOLE=y
# CONFIG_FDCLONE_DISABLE is not set
# CONFIG_FDCLONE_STDIO is not set
CONFIG_SDCLONE_DISABLE=y
-# CONFIG_SCHED_WORKQUEUE is not set
# CONFIG_SCHED_WAITPID is not set
+# CONFIG_SCHED_STARTHOOK is not set
# CONFIG_SCHED_ATEXIT is not set
# CONFIG_SCHED_ONEXIT is not set
CONFIG_USER_ENTRYPOINT="ostest_main"
@@ -169,9 +195,15 @@ CONFIG_DISABLE_OS_API=y
# CONFIG_DISABLE_PTHREAD is not set
# CONFIG_DISABLE_SIGNALS is not set
# CONFIG_DISABLE_MQUEUE is not set
-# CONFIG_DISABLE_MOUNTPOINT is not set
# CONFIG_DISABLE_ENVIRON is not set
-CONFIG_DISABLE_POLL=y
+
+#
+# Signal Numbers
+#
+CONFIG_SIG_SIGUSR1=1
+CONFIG_SIG_SIGUSR2=2
+CONFIG_SIG_SIGALARM=3
+CONFIG_SIG_SIGCONDTIMEDOUT=16
#
# Sizes of configurable things (0 disables)
@@ -191,7 +223,6 @@ CONFIG_PREALLOC_TIMERS=4
#
# Stack and heap information
#
-# CONFIG_CUSTOM_STACK is not set
CONFIG_IDLETHREAD_STACKSIZE=4096
CONFIG_USERMAIN_STACKSIZE=4096
CONFIG_PTHREAD_STACK_MIN=256
@@ -200,17 +231,23 @@ CONFIG_PTHREAD_STACK_DEFAULT=4096
#
# Device Drivers
#
+CONFIG_DISABLE_POLL=y
CONFIG_DEV_NULL=y
# CONFIG_DEV_ZERO is not set
# CONFIG_LOOP is not set
# CONFIG_RAMDISK is not set
# CONFIG_CAN is not set
+# CONFIG_ARCH_HAVE_PWM_PULSECOUNT is not set
# CONFIG_PWM is not set
+# CONFIG_ARCH_HAVE_I2CRESET is not set
# CONFIG_I2C is not set
# CONFIG_SPI is not set
+# CONFIG_I2S is not set
# CONFIG_RTC is not set
# CONFIG_WATCHDOG is not set
# CONFIG_ANALOG is not set
+# CONFIG_AUDIO_DEVICES is not set
+# CONFIG_VIDEO_DEVICES is not set
# CONFIG_BCH is not set
# CONFIG_INPUT is not set
# CONFIG_LCD is not set
@@ -226,8 +263,12 @@ CONFIG_DEV_LOWCONSOLE=y
# CONFIG_16550_UART is not set
CONFIG_ARCH_HAVE_UART0=y
CONFIG_ARCH_HAVE_UART1=y
+
+#
+# USART Configuration
+#
CONFIG_MCU_SERIAL=y
-CONFIG_STANDARD_SERIAL=y
+# CONFIG_SERIAL_TIOCSERGSTRUCT is not set
CONFIG_UART0_SERIAL_CONSOLE=y
# CONFIG_UART1_SERIAL_CONSOLE is not set
# CONFIG_NO_SERIAL_CONSOLE is not set
@@ -241,6 +282,8 @@ CONFIG_UART0_BAUD=57600
CONFIG_UART0_BITS=8
CONFIG_UART0_PARITY=0
CONFIG_UART0_2STOP=0
+# CONFIG_UART0_IFLOWCONTROL is not set
+# CONFIG_UART0_OFLOWCONTROL is not set
#
# UART1 Configuration
@@ -251,6 +294,10 @@ CONFIG_UART1_BAUD=57600
CONFIG_UART1_BITS=8
CONFIG_UART1_PARITY=0
CONFIG_UART1_2STOP=0
+# CONFIG_UART1_IFLOWCONTROL is not set
+# CONFIG_UART1_OFLOWCONTROL is not set
+# CONFIG_SERIAL_IFLOWCONTROL is not set
+# CONFIG_SERIAL_OFLOWCONTROL is not set
# CONFIG_USBDEV is not set
# CONFIG_USBHOST is not set
# CONFIG_WIRELESS is not set
@@ -267,6 +314,8 @@ CONFIG_UART1_2STOP=0
#
# Networking Support
#
+# CONFIG_ARCH_HAVE_NET is not set
+# CONFIG_ARCH_HAVE_PHY is not set
# CONFIG_NET is not set
#
@@ -276,14 +325,20 @@ CONFIG_UART1_2STOP=0
#
# File system configuration
#
-# CONFIG_FS_FAT is not set
+# CONFIG_DISABLE_MOUNTPOINT is not set
+# CONFIG_FS_READABLE is not set
+# CONFIG_FS_WRITABLE is not set
# CONFIG_FS_RAMMAP is not set
+# CONFIG_FS_FAT is not set
# CONFIG_FS_NXFFS is not set
# CONFIG_FS_ROMFS is not set
+# CONFIG_FS_SMARTFS is not set
+# CONFIG_FS_PROCFS is not set
#
# System Logging
#
+# CONFIG_SYSLOG_ENABLE is not set
# CONFIG_SYSLOG is not set
#
@@ -294,6 +349,7 @@ CONFIG_UART1_2STOP=0
#
# Memory Management
#
+# CONFIG_MM_MULTIHEAP is not set
# CONFIG_MM_SMALL is not set
CONFIG_MM_REGIONS=1
CONFIG_ARCH_HAVE_HEAP2=y
@@ -302,16 +358,28 @@ CONFIG_HEAP2_SIZE=0
# CONFIG_GRAN is not set
#
+# Audio Support
+#
+# CONFIG_AUDIO is not set
+
+#
# Binary Formats
#
# CONFIG_BINFMT_DISABLE is not set
+# CONFIG_BINFMT_EXEPATH is not set
# CONFIG_NXFLAT is not set
# CONFIG_ELF is not set
+# CONFIG_BUILTIN is not set
+# CONFIG_PIC is not set
# CONFIG_SYMTAB_ORDEREDBYNAME is not set
#
# Library Routines
#
+
+#
+# Standard C Library Options
+#
CONFIG_STDIO_BUFFER_SIZE=64
CONFIG_STDIO_LINEBUFFER=y
CONFIG_NUNGET_CHARS=2
@@ -319,10 +387,14 @@ CONFIG_LIB_HOMEDIR="/"
# CONFIG_LIBM is not set
CONFIG_NOPRINTF_FIELDWIDTH=y
# CONFIG_LIBC_FLOATINGPOINT is not set
+CONFIG_LIB_RAND_ORDER=1
# CONFIG_EOL_IS_CR is not set
# CONFIG_EOL_IS_LF is not set
# CONFIG_EOL_IS_BOTH_CRLF is not set
CONFIG_EOL_IS_EITHER_CRLF=y
+# CONFIG_LIBC_EXECFUNCS is not set
+CONFIG_POSIX_SPAWN_PROXY_STACKSIZE=1024
+CONFIG_TASK_SPAWN_DEFAULT_STACKSIZE=2048
# CONFIG_LIBC_STRERROR is not set
# CONFIG_LIBC_PERROR_STDOUT is not set
CONFIG_ARCH_LOWPUTC=y
@@ -331,8 +403,16 @@ CONFIG_LIB_SENDFILE_BUFSIZE=512
# CONFIG_ARCH_OPTIMIZED_FUNCTIONS is not set
#
+# Non-standard Library Support
+#
+# CONFIG_SCHED_WORKQUEUE is not set
+# CONFIG_LIB_KBDCODEC is not set
+# CONFIG_LIB_SLCDCODEC is not set
+
+#
# Basic CXX Support
#
+# CONFIG_C99_BOOL8 is not set
# CONFIG_HAVE_CXX is not set
#
@@ -340,17 +420,15 @@ CONFIG_LIB_SENDFILE_BUFSIZE=512
#
#
-# Named Applications
+# Built-In Applications
#
-# CONFIG_BUILTIN is not set
#
# Examples
#
# CONFIG_EXAMPLES_BUTTONS is not set
# CONFIG_EXAMPLES_CAN is not set
-# CONFIG_SYSTEM_CDCACM is not set
-# CONFIG_SYSTEM_COMPOSITE is not set
+# CONFIG_EXAMPLES_CONFIGDATA is not set
# CONFIG_EXAMPLES_DHCPD is not set
# CONFIG_EXAMPLES_ELF is not set
# CONFIG_EXAMPLES_FTPC is not set
@@ -359,12 +437,13 @@ CONFIG_LIB_SENDFILE_BUFSIZE=512
# CONFIG_EXAMPLES_HELLOXX is not set
# CONFIG_EXAMPLES_JSON is not set
# CONFIG_EXAMPLES_HIDKBD is not set
+# CONFIG_EXAMPLES_KEYPADTEST is not set
# CONFIG_EXAMPLES_IGMP is not set
# CONFIG_EXAMPLES_LCDRW is not set
# CONFIG_EXAMPLES_MM is not set
-# CONFIG_EXAMPLES_MOUNT is not set
# CONFIG_EXAMPLES_MODBUS is not set
-# CONFIG_EXAMPLES_NETTEST is not set
+# CONFIG_EXAMPLES_MOUNT is not set
+# CONFIG_EXAMPLES_NRF24L01TERM is not set
# CONFIG_EXAMPLES_NSH is not set
# CONFIG_EXAMPLES_NULL is not set
# CONFIG_EXAMPLES_NX is not set
@@ -384,11 +463,15 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
# CONFIG_EXAMPLES_PASHELLO is not set
# CONFIG_EXAMPLES_PIPE is not set
# CONFIG_EXAMPLES_POLL is not set
+# CONFIG_EXAMPLES_POSIXSPAWN is not set
# CONFIG_EXAMPLES_QENCODER is not set
# CONFIG_EXAMPLES_RGMP is not set
# CONFIG_EXAMPLES_ROMFS is not set
# CONFIG_EXAMPLES_SENDMAIL is not set
# CONFIG_EXAMPLES_SERLOOP is not set
+# CONFIG_EXAMPLES_SLCD is not set
+# CONFIG_EXAMPLES_SMART is not set
+# CONFIG_EXAMPLES_TCPECHO is not set
# CONFIG_EXAMPLES_TELNETD is not set
# CONFIG_EXAMPLES_THTTPD is not set
# CONFIG_EXAMPLES_TIFF is not set
@@ -396,14 +479,13 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
# CONFIG_EXAMPLES_UDP is not set
# CONFIG_EXAMPLES_UIP is not set
# CONFIG_EXAMPLES_USBSERIAL is not set
-# CONFIG_SYSTEM_USBMSC is not set
# CONFIG_EXAMPLES_USBTERM is not set
# CONFIG_EXAMPLES_WATCHDOG is not set
-# CONFIG_EXAMPLES_WLAN is not set
#
-# Interpreters
+# Graphics Support
#
+# CONFIG_TIFF is not set
#
# Interpreters
@@ -433,11 +515,7 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
# CONFIG_NETUTILS_WEBCLIENT is not set
#
-# ModBus
-#
-
-#
-# FreeModbus
+# FreeModBus
#
# CONFIG_MODBUS is not set
@@ -451,10 +529,23 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
#
#
+# Platform-specific Support
+#
+# CONFIG_PLATFORM_CONFIGDATA is not set
+
+#
# System NSH Add-Ons
#
#
+# USB CDC/ACM Device Commands
+#
+
+#
+# USB Composite Device Commands
+#
+
+#
# Custom Free Memory Command
#
# CONFIG_SYSTEM_FREE is not set
@@ -469,6 +560,20 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
# CONFIG_SYSTEM_INSTALL is not set
#
+# FLASH Erase-all Command
+#
+
+#
+# NxPlayer media player library / command Line
+#
+# CONFIG_SYSTEM_NXPLAYER is not set
+
+#
+# RAM test
+#
+# CONFIG_SYSTEM_RAMTEST is not set
+
+#
# readline()
#
# CONFIG_SYSTEM_READLINE is not set
@@ -492,3 +597,20 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
# Sysinfo
#
# CONFIG_SYSTEM_SYSINFO is not set
+
+#
+# USB Monitor
+#
+
+#
+# Stack Monitor
+#
+
+#
+# USB Mass Storage Device Commands
+#
+
+#
+# Zmodem Commands
+#
+# CONFIG_SYSTEM_ZMODEM is not set
diff --git a/nuttx/configs/z16f2800100zcog/ostest/ostest.zdsbak b/nuttx/configs/z16f2800100zcog/ostest/ostest.zdsbak
new file mode 100755
index 000000000..ade3d73d4
--- /dev/null
+++ b/nuttx/configs/z16f2800100zcog/ostest/ostest.zdsbak
@@ -0,0 +1,238 @@
+<project type="Standard" project-type="Standard" configuration="Debug" created-by="{{build_number}}" modified-by="c:4.11:07031901">
+<cpu>Z16F2811AL</cpu>
+
+<!-- file information -->
+<files>
+<file filter-key="flash">..\..\..\nuttx.hex</file>
+</files>
+
+<!-- configuration information -->
+<configurations>
+<configuration name="Debug" >
+<tools>
+<tool name="Assembler">
+<options>
+<option name="define" type="string" change-action="assemble">_Z16F2811AL=1,_Z16F_SERIES=1</option>
+<option name="include" type="string" change-action="assemble"></option>
+<option name="list" type="boolean" change-action="none">true</option>
+<option name="listmac" type="boolean" change-action="none">false</option>
+<option name="name" type="boolean" change-action="none">true</option>
+<option name="pagelen" type="integer" change-action="none">56</option>
+<option name="pagewidth" type="integer" change-action="none">80</option>
+<option name="quiet" type="boolean" change-action="none">true</option>
+</options>
+</tool>
+<tool name="Compiler">
+<options>
+<option name="chartype" type="string" change-action="compile">U</option>
+<option name="define" type="string" change-action="compile">_Z16F2811AL,_Z16F_SERIES</option>
+<option name="genprintf" type="boolean" change-action="compile">true</option>
+<option name="keepasm" type="boolean" change-action="none">false</option>
+<option name="keeplst" type="boolean" change-action="none">false</option>
+<option name="list" type="boolean" change-action="none">false</option>
+<option name="listinc" type="boolean" change-action="none">false</option>
+<option name="model" type="string" change-action="compile">S</option>
+<option name="modsect" type="boolean" change-action="compile">false</option>
+<option name="stdinc" type="string" change-action="compile"></option>
+<option name="usrinc" type="string" change-action="compile"></option>
+<option name="regvar" type="boolean" change-action="compile">true</option>
+<option name="regvarcache" type="boolean" change-action="none">false</option>
+<option name="reduceopt" type="boolean" change-action="compile">false</option>
+<option name="watch" type="boolean" change-action="none">false</option>
+</options>
+</tool>
+<tool name="Debugger">
+<options>
+<option name="target" type="string" change-action="rebuild">Z16F2800100ZCOG</option>
+<option name="debugtool" type="string" change-action="none">USBSmartCable</option>
+<option name="usepageerase" type="boolean" change-action="none">true</option>
+</options>
+</tool>
+<tool name="FlashProgrammer">
+<options>
+<option name="erasebeforeburn" type="boolean" change-action="none">false</option>
+<option name="eraseinfopage" type="boolean" change-action="none">false</option>
+<option name="enableinfopage" type="boolean" change-action="none">false</option>
+<option name="includeserial" type="boolean" change-action="none">false</option>
+<option name="offset" type="integer" change-action="none">0</option>
+<option name="snenable" type="boolean" change-action="none">true</option>
+<option name="sn" type="string" change-action="none">000000000000000000000000</option>
+<option name="snsize" type="integer" change-action="none">1</option>
+<option name="snstep" type="integer" change-action="none">000000000000000000000001</option>
+<option name="snstepformat" type="integer" change-action="none">0</option>
+<option name="snaddress" type="string" change-action="none">0</option>
+<option name="snformat" type="integer" change-action="none">0</option>
+<option name="snbigendian" type="boolean" change-action="none">true</option>
+<option name="singleval" type="string" change-action="none">0</option>
+<option name="singlevalformat" type="integer" change-action="none">0</option>
+<option name="usepageerase" type="boolean" change-action="none">false</option>
+<option name="autoselect" type="boolean" change-action="none">true</option>
+</options>
+</tool>
+<tool name="General">
+<options>
+<option name="warn" type="boolean" change-action="none">true</option>
+<option name="debug" type="boolean" change-action="assemble">true</option>
+<option name="debugcache" type="boolean" change-action="none">true</option>
+<option name="igcase" type="boolean" change-action="assemble">false</option>
+<option name="outputdir" type="string" change-action="compile">.</option>
+</options>
+</tool>
+<tool name="Librarian">
+<options>
+<option name="outfile" type="string" change-action="build"></option>
+<option name="warn" type="boolean" change-action="none">false</option>
+</options>
+</tool>
+<tool name="Linker">
+<options>
+<option name="directives" type="string" change-action="build"></option>
+<option name="createnew" type="boolean" change-action="build">false</option>
+<option name="eram" type="string" change-action="build">0-0</option>
+<option name="erom" type="string" change-action="build">0-0</option>
+<option name="exeform" type="string" change-action="build">OMF695,INTEL32</option>
+<option name="fplib" type="string" change-action="build">Dummy</option>
+<option name="iodata" type="string" change-action="build">0-0</option>
+<option name="linkctlfile" type="string" change-action="build"></option>
+<option name="map" type="boolean" change-action="none">true</option>
+<option name="maxhexlen" type="integer" change-action="build">64</option>
+<option name="objlibmods" type="string" change-action="build"></option>
+<option name="of" type="string" change-action="build">.\ostest</option>
+<option name="padhex" type="boolean" change-action="build">false</option>
+<option name="quiet" type="boolean" change-action="none">false</option>
+<option name="ram" type="string" change-action="build">FFB000-FFBFFF</option>
+<option name="relist" type="boolean" change-action="build">false</option>
+<option name="rom" type="string" change-action="build">000000-007FFF</option>
+<option name="sort" type="string" change-action="none">name</option>
+<option name="startuplnkcmds" type="boolean" change-action="build">true</option>
+<option name="startuptype" type="string" change-action="build">1</option>
+<option name="undefisfatal" type="boolean" change-action="none">true</option>
+<option name="useadddirectives" type="boolean" change-action="build">false</option>
+<option name="usecrun" type="boolean" change-action="build">true</option>
+<option name="warnoverlap" type="boolean" change-action="none">false</option>
+<option name="warnisfatal" type="boolean" change-action="none">false</option>
+<option name="xref" type="boolean" change-action="none">false</option>
+</options>
+</tool>
+</tools>
+</configuration>
+<configuration name="Release" >
+<tools>
+<tool name="Assembler">
+<options>
+<option name="define" type="string" change-action="assemble">_Z16F2811AL=1,_Z16F_SERIES=1</option>
+<option name="include" type="string" change-action="assemble"></option>
+<option name="list" type="boolean" change-action="none">true</option>
+<option name="listmac" type="boolean" change-action="none">false</option>
+<option name="name" type="boolean" change-action="none">true</option>
+<option name="pagelen" type="integer" change-action="none">56</option>
+<option name="pagewidth" type="integer" change-action="none">80</option>
+<option name="quiet" type="boolean" change-action="none">true</option>
+</options>
+</tool>
+<tool name="Compiler">
+<options>
+<option name="chartype" type="string" change-action="compile">U</option>
+<option name="define" type="string" change-action="compile">_Z16F2811AL,_Z16F_SERIES</option>
+<option name="genprintf" type="boolean" change-action="compile">true</option>
+<option name="keepasm" type="boolean" change-action="none">false</option>
+<option name="keeplst" type="boolean" change-action="none">false</option>
+<option name="list" type="boolean" change-action="none">false</option>
+<option name="listinc" type="boolean" change-action="none">false</option>
+<option name="model" type="string" change-action="compile">S</option>
+<option name="modsect" type="boolean" change-action="compile">false</option>
+<option name="stdinc" type="string" change-action="compile"></option>
+<option name="usrinc" type="string" change-action="compile"></option>
+<option name="regvar" type="boolean" change-action="compile">true</option>
+<option name="regvarcache" type="boolean" change-action="none">false</option>
+<option name="reduceopt" type="boolean" change-action="compile">false</option>
+<option name="watch" type="boolean" change-action="none">false</option>
+</options>
+</tool>
+<tool name="Debugger">
+<options>
+<option name="target" type="string" change-action="rebuild"></option>
+<option name="debugtool" type="string" change-action="none">ZPAKII</option>
+<option name="usepageerase" type="boolean" change-action="none">true</option>
+</options>
+</tool>
+<tool name="FlashProgrammer">
+<options>
+<option name="erasebeforeburn" type="boolean" change-action="none">false</option>
+<option name="eraseinfopage" type="boolean" change-action="none">false</option>
+<option name="enableinfopage" type="boolean" change-action="none">false</option>
+<option name="includeserial" type="boolean" change-action="none">false</option>
+<option name="offset" type="integer" change-action="none">0</option>
+<option name="snenable" type="boolean" change-action="none">false</option>
+<option name="sn" type="string" change-action="none">0</option>
+<option name="snsize" type="integer" change-action="none">0</option>
+<option name="snstep" type="integer" change-action="none">1</option>
+<option name="snstepformat" type="integer" change-action="none">0</option>
+<option name="snaddress" type="string" change-action="none">0</option>
+<option name="snformat" type="integer" change-action="none">0</option>
+<option name="snbigendian" type="boolean" change-action="none">true</option>
+<option name="singleval" type="string" change-action="none">0</option>
+<option name="singlevalformat" type="integer" change-action="none">0</option>
+<option name="usepageerase" type="boolean" change-action="none">false</option>
+<option name="autoselect" type="boolean" change-action="none">true</option>
+</options>
+</tool>
+<tool name="General">
+<options>
+<option name="warn" type="boolean" change-action="none">true</option>
+<option name="debug" type="boolean" change-action="assemble">false</option>
+<option name="debugcache" type="boolean" change-action="none">true</option>
+<option name="igcase" type="boolean" change-action="assemble">false</option>
+<option name="outputdir" type="string" change-action="compile">.</option>
+</options>
+</tool>
+<tool name="Librarian">
+<options>
+<option name="outfile" type="string" change-action="build"></option>
+<option name="warn" type="boolean" change-action="none">false</option>
+</options>
+</tool>
+<tool name="Linker">
+<options>
+<option name="directives" type="string" change-action="build"></option>
+<option name="createnew" type="boolean" change-action="build">false</option>
+<option name="eram" type="string" change-action="build">0-0</option>
+<option name="erom" type="string" change-action="build">0-0</option>
+<option name="exeform" type="string" change-action="build">OMF695,INTEL32</option>
+<option name="fplib" type="string" change-action="build">Dummy</option>
+<option name="iodata" type="string" change-action="build">0-0</option>
+<option name="linkctlfile" type="string" change-action="build"></option>
+<option name="map" type="boolean" change-action="none">true</option>
+<option name="maxhexlen" type="integer" change-action="build">64</option>
+<option name="objlibmods" type="string" change-action="build"></option>
+<option name="of" type="string" change-action="build">.\ostest</option>
+<option name="padhex" type="boolean" change-action="build">false</option>
+<option name="quiet" type="boolean" change-action="none">false</option>
+<option name="ram" type="string" change-action="build">FFB000-FFBFFF</option>
+<option name="relist" type="boolean" change-action="build">false</option>
+<option name="rom" type="string" change-action="build">000000-007FFF</option>
+<option name="sort" type="string" change-action="none">name</option>
+<option name="startuplnkcmds" type="boolean" change-action="build">true</option>
+<option name="startuptype" type="string" change-action="build">1</option>
+<option name="undefisfatal" type="boolean" change-action="none">true</option>
+<option name="useadddirectives" type="boolean" change-action="build">false</option>
+<option name="usecrun" type="boolean" change-action="build">true</option>
+<option name="warnoverlap" type="boolean" change-action="none">false</option>
+<option name="warnisfatal" type="boolean" change-action="none">false</option>
+<option name="xref" type="boolean" change-action="none">false</option>
+</options>
+</tool>
+</tools>
+</configuration>
+</configurations>
+
+<!-- watch information -->
+<watch-elements>
+<watch-element expression="0x801d1a" />
+</watch-elements>
+
+<!-- breakpoint information -->
+<breakpoints>
+</breakpoints>
+
+</project> \ No newline at end of file
diff --git a/nuttx/configs/z16f2800100zcog/ostest/ostest.zfpproj b/nuttx/configs/z16f2800100zcog/ostest/ostest.zfpproj
index ade3d73d4..7d4f731f9 100644
--- a/nuttx/configs/z16f2800100zcog/ostest/ostest.zfpproj
+++ b/nuttx/configs/z16f2800100zcog/ostest/ostest.zfpproj
@@ -1,4 +1,4 @@
-<project type="Standard" project-type="Standard" configuration="Debug" created-by="{{build_number}}" modified-by="c:4.11:07031901">
+<project type="Standard" project-type="Standard" configuration="Debug" created-by="{{build_number}}" modified-by="d:5.0.0:11071102" ZDSII="ZDS - ZNEO 5.0.1 (Build 11071201)">
<cpu>Z16F2811AL</cpu>
<!-- file information -->
diff --git a/nuttx/include/nuttx/sched.h b/nuttx/include/nuttx/sched.h
index a5e62a55b..259e14f66 100644
--- a/nuttx/include/nuttx/sched.h
+++ b/nuttx/include/nuttx/sched.h
@@ -184,7 +184,7 @@ typedef enum tstate_e tstate_t;
/* The following is the form of a thread start-up function */
-typedef void (*start_t)(void);
+typedef CODE void (*start_t)(void);
/* This is the entry point into the main thread of the task or into a created
* pthread within the task.
diff --git a/nuttx/include/sys/types.h b/nuttx/include/sys/types.h
index 38f091e8a..8a3f97d33 100644
--- a/nuttx/include/sys/types.h
+++ b/nuttx/include/sys/types.h
@@ -223,7 +223,7 @@ typedef int32_t suseconds_t;
/* Task entry point */
-typedef int (*main_t)(int argc, char *argv[]);
+typedef CODE int (*main_t)(int argc, char *argv[]);
#endif
diff --git a/nuttx/sched/task_setup.c b/nuttx/sched/task_setup.c
index 21a82586a..582b64a4a 100644
--- a/nuttx/sched/task_setup.c
+++ b/nuttx/sched/task_setup.c
@@ -305,8 +305,8 @@ static inline void task_dupdspace(FAR struct tcb_s *tcb)
* Input Parameters:
* tcb - Address of the new task's TCB
* priority - Priority of the new task
- * start - Thread startup rotuine
- * entry - Thred user entry point
+ * start - Thread startup routine
+ * entry - Thread user entry point
* ttype - Type of the new thread: task, pthread, or kernel thread
*
* Return Value:
@@ -318,7 +318,7 @@ static inline void task_dupdspace(FAR struct tcb_s *tcb)
****************************************************************************/
static int thread_schedsetup(FAR struct tcb_s *tcb, int priority,
- start_t start, FAR void *entry, uint8_t ttype)
+ start_t start, CODE void *entry, uint8_t ttype)
{
int ret;
@@ -336,7 +336,7 @@ static int thread_schedsetup(FAR struct tcb_s *tcb, int priority,
tcb->start = start;
tcb->entry.main = (main_t)entry;
- /* Save the thrad type. This setting will be needed in
+ /* Save the thread type. This setting will be needed in
* up_initial_state() is called.
*/
@@ -456,8 +456,8 @@ static int task_tcbargsetup(FAR struct task_tcb_s *tcb,
#endif /* CONFIG_TASK_NAME_SIZE */
/* For tasks, the life of the argument must be as long as the life of the
- * task and the arguments must be strings. So for tasks, we have to to
- * dup the strings.
+ * task and the arguments must be strings. So for tasks, we have to dup
+ * the strings.
*
* The first NULL argument terminates the list of arguments. The argv
* pointer may be NULL if no parameters are passed.
@@ -628,7 +628,7 @@ static int task_stackargsetup(FAR struct task_tcb_s *tcb,
* Input Parameters:
* tcb - Address of the new task's TCB
* priority - Priority of the new task
- * start - Startup function (probably task_start())
+ * start - Start-up function (probably task_start())
* main - Application start point of the new task
* ttype - Type of the new thread: task or kernel thread
*
@@ -648,7 +648,7 @@ int task_schedsetup(FAR struct task_tcb_s *tcb, int priority, start_t start,
/* Perform common thread setup */
ret = thread_schedsetup((FAR struct tcb_s *)tcb, priority, start,
- (FAR void *)main, ttype);
+ (CODE void *)main, ttype);
if (ret == OK)
{
/* Save task restart priority */
@@ -671,7 +671,7 @@ int task_schedsetup(FAR struct task_tcb_s *tcb, int priority, start_t start,
* Input Parameters:
* tcb - Address of the new task's TCB
* priority - Priority of the new task
- * start - Startup function (probably pthread_start())
+ * start - Start-up function (probably pthread_start())
* entry - Entry point of the new pthread
* ttype - Type of the new thread: task, pthread, or kernel thread
*
@@ -690,7 +690,7 @@ int pthread_schedsetup(FAR struct pthread_tcb_s *tcb, int priority, start_t star
/* Perform common thread setup */
return thread_schedsetup((FAR struct tcb_s *)tcb, priority, start,
- (FAR void *)entry, TCB_FLAG_TTYPE_PTHREAD);
+ (CODE void *)entry, TCB_FLAG_TTYPE_PTHREAD);
}
#endif
@@ -706,7 +706,7 @@ int pthread_schedsetup(FAR struct pthread_tcb_s *tcb, int priority, start_t star
* structure in the TCB, the arguments are cloned via strdup.
*
* In the kernel build case, the argv[] array and all strings are copied
- * to the task's stack. This is done because the TCB (and kernal allocated
+ * to the task's stack. This is done because the TCB (and kernel allocated
* strings) are only accessible in kernel-mode. Data on the stack, on the
* other hand, is guaranteed to be accessible no matter what mode the
* task runs in.
@@ -737,7 +737,7 @@ int task_argsetup(FAR struct task_tcb_s *tcb, FAR const char *name,
#if !defined(CONFIG_CUSTOM_STACK) && defined(CONFIG_NUTTX_KERNEL)
/* In the kernel build case, the argv[] array and all strings are copied
- * to the task's stack. This is done because the TCB (and kernal allocated
+ * to the task's stack. This is done because the TCB (and kernel allocated
* strings) are only accessible in kernel-mode. Data on the stack, on the
* other hand, is guaranteed to be accessible no matter what mode the
* task runs in.