diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html index 623ac7651c..59c0189838 100644 --- a/Documentation/NuttX.html +++ b/Documentation/NuttX.html @@ -8,7 +8,7 @@

NuttX RTOS

-

Last Updated: February 5, 2008

+

Last Updated: February 7, 2008

@@ -974,9 +974,10 @@ nuttx-0.3.8 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> * Added /dev/zero * 'errno' is now defined to be *get_errno_ptr() with no name conflicts * Added lseek() and fseek() - * Integrated pascal test case on the simulation platform. Needs pascal-0.1.1. - * Integrated pascal test case on the z16f platform. Needs pascal-0.1.2 (not - yet released). + * Integrated Pascal interpreter test case on the simulation platform. Needs + pascal-0.1.1. + * Add Pascal test case on the z16f platform. Needs pascal-0.1.2 (does not + yet work due to some tool issues). * C buffered I/O fixes: - Fix fflush() return value, - Add correct fflush behavior when the FILE argument is null. @@ -985,8 +986,9 @@ nuttx-0.3.8 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> - When read data is flushed, reposition the file pointer to account for buffered, but unreand data * Pascal P-Code files are now standardized to big-endian for portability - * Fix a build problem with z80 and SDCC 2.7.0 (format of a map file changed). + * Fix a build problem with z80 and SDCC 2.7.0 (format of a map file changed) (see bug 1887170) + * Pascal P-Code runtime now compiles with the SDCC toolchain. pascal-0.1.2 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> diff --git a/Documentation/NuttxPortingGuide.html b/Documentation/NuttxPortingGuide.html index 9ae720862c..3f6a84e391 100644 --- a/Documentation/NuttxPortingGuide.html +++ b/Documentation/NuttxPortingGuide.html @@ -16,7 +16,7 @@

by

Gregory Nutt

-

Last Update: January 10, 2008

+

Last Update: February 7, 2008

Table of Contents

@@ -36,7 +36,7 @@
  • 2.3.2 Summary of Files
  • 2.3.3 Supported Boards
  • @@ -90,13 +90,13 @@
  • 5.0 NuttX File System
  • Appendix A: NuttX Configuration Settings
  • - +
  • Appendix B: Trademarks

  • 1.0 Introduction

    Overview This document provides and overview of the NuttX build and configuration - logic and provides hints for the incorporation of new processor/board archectures + logic and provides hints for the incorporation of new processor/board architectures into the build.

    @@ -132,7 +132,7 @@ | | | `-- (chip-specific source files) | | |--<other-chips>/ | | `-- (architecture-specific source files) -| `-- <other-architectures>/ +| `-- <other-architecture directories>/ |-- configs/ | |-- <board-name>/ | | |-- include/ @@ -140,8 +140,10 @@ | | |-- src/ | | | |-- Makefile | | | `-- (board-specific source files) -| | `-- (board-specific configuration files) -| `-- <other-boards>/ +| | |---<config1-dir>/ +| | | `-- (board-specific/configuration-specific files) +| | `---(other board-specific configuration sub-directories)/ +| `-- <(other board directories)>/ |-- drivers/ | |-- Makefile | `-- (common driver source files) @@ -226,14 +228,14 @@

  • - Board specific files. + Board specific configurations. In order to be usable, the chip must be contained in a board environment. The board configuration defines additional properties of the board including such things as peripheral LEDs, external peripherals (such as network, USB, etc.).

    These board-specific configuration files can be found in the configs/<board-name>/ sub-directories and are discussed - in a a paragraph below. + in a paragraph below.

  • @@ -251,8 +253,8 @@ This directory contains several sub-directories, each containing architecture-specific logic. The task of porting NuttX to a new processor consists of - add a new sudirectory under arch/ containing logic specific - to the new architecuture. + add a new subdirectory under arch/ containing logic specific + to the new architecture. The complete board port in is defined by the architecture-specific code in this directory (plus the board-specific configurations in the config/ subdirectory). @@ -468,15 +470,24 @@ provide a subdirectory <board-name> under configs/ with the following characteristics:

    2.3.2 Summary of Files

    @@ -502,10 +513,15 @@ It must support the following targets: libext$(LIBEXT), clean, and distclean. -

    2.3.2.2 Board Specific Configuration Files

    +

    2.3.2.2 Board Specific Configuration Sub-Directories

    The configs/<board-name>/ sub-directory holds all of the files that are necessary to configure Nuttx for the particular board. + A board may have various different configurations using the common source files. + Each board configuration is described by three files: Make.defs, defconfig, and setenv.sh. + Typically, each set of configuration files is retained in a separate configuration sub-directory + (<config1-dir>, <config2-dir>, .. in the above diagram). + The procedure for configuring NuttX is described below, This paragraph will describe the contents of these configuration files.

    @@ -530,7 +546,7 @@
  • defconfig: This is a configuration file similar to the Linux - configuration file. In contains varialble/value pairs like: + configuration file. In contains variable/value pairs like: @@ -697,19 +713,20 @@

    Manual Configuration. Configuring NuttX requires only copying the - board-specific configuration files into the top level directory which appears in the make files as the make variable, ${TOPDIR}. + board-specific configuration files into the top level directory which appears in the make files as the make variable, ${TOPDIR}. This could be done manually as follows:

    Where <board-name> is the name of one of the sub-directories of the NuttX configs/ directory. This sub-directory name corresponds to one of the supported boards identified above. + And <config-dir> is the optional, specific configuration directory for the board.

    Automated Configuration. @@ -718,7 +735,7 @@

    @@ -747,14 +764,14 @@ make That directory also holds:

    -The setenv.sh contains Linux environmental settings that are needed for the build. -The specific environmental definitions are unique for each board but should include, as a minimum, updates to the PATH variable to include the full path to the architecture-specific toolchain identified in Make.defs. -The setenv.sh only needs to be source'ed at the beginning of a session. +The setenv.sh contains Linux/Cygwin environmental settings that are needed for the build. +The specific environmental definitions are unique for each board but should include, as a minimum, updates to the PATH variable to include the full path to the architecture-specific toolchain identified in Make.defs. +The setenv.sh only needs to be source'ed at the beginning of a session. The system can be re-made subsequently by just typing make.

    @@ -1548,6 +1565,22 @@ The system can be re-made subsequently by just typing make.

  • +

    Appendix B: Trademarks

    + +
  • ARM, ARM7 ARM7TDMI, ARM9, ARM926EJS are trademarks of Advanced RISC Machines, Limited.
  • +
  • Cygwin is a trademark of Red Hat, Incorporated.
  • +
  • Linux is a registered trademark of Linus Torvalds.
  • +
  • LPC2148 is a trademark of NXP Semiconductors.
  • +
  • TI is a tradename of Texas Instruments Incorporated.
  • +
  • UNIX is a registered trademark of The Open Group.
  • +
  • VxWorks is a registered trademark of Wind River Systems, Incorporated.
  • +
  • ZDS, ZNEO, Z16F, Z80, and Zilog are a registered trademark of Zilog, Inc.
  • + +

    + NOTE: NuttX is not licensed to use the POSIX trademark. NuttX uses the POSIX + standard as a development guideline only. +

    +