You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by gn...@apache.org on 2020/04/17 21:16:54 UTC

[incubator-nuttx] branch master updated: arch/README.txt: Various improvements to the text

This is an automated email from the ASF dual-hosted git repository.

gnutt pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 1d39453  arch/README.txt: Various improvements to the text
1d39453 is described below

commit 1d394535cb867e5736dde5b3dea4c23199e3b266
Author: Nathan Hartman <59...@users.noreply.github.com>
AuthorDate: Fri Apr 17 16:22:54 2020 -0400

    arch/README.txt: Various improvements to the text
    
    * Added missing architectures and directories.
    
    * Corrected a few mistakes.
    
    * Rewrapped some text for consistency.
---
 arch/README.txt | 135 +++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 81 insertions(+), 54 deletions(-)

diff --git a/arch/README.txt b/arch/README.txt
index 38ebe9d..b9317fd 100644
--- a/arch/README.txt
+++ b/arch/README.txt
@@ -16,11 +16,11 @@ The NuttX configuration consists of:
 o Processor architecture specific files.  These are the files contained
   in the arch/<arch-name>/ directory discussed in this README.
 
-o Chip/SoC specific files.  Each processor processor architecture
-  is embedded in chip or System-on-a-Chip (SoC) architecture.  The
-  full chip architecture includes the processor architecture plus
-  chip-specific interrupt logic, general purpose I/O (GIO) logic, and
-  specialized, internal peripherals (such as UARTs, USB, etc.).
+o Chip/SoC specific files.  Each processor architecture is embedded in
+  chip or System-on-a-Chip (SoC) architecture.  The full chip
+  architecture includes the processor architecture plus chip-specific
+  interrupt logic, general purpose I/O (GPIO) logic, and specialized,
+  internal peripherals (such as UARTs, USB, etc.).
 
   These chip-specific files are contained within chip-specific
   sub-directories in the arch/<arch-name>/ directory and are selected
@@ -28,16 +28,16 @@ o Chip/SoC specific files.  Each processor processor architecture
 
 o Board specific files.  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.).
+  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
   boards/<arch>/<chip>/<board> sub-directories.
 
-This README will address the processor architecture specific files
-that are contained in the arch/<arch-name>/ directory. The file
-include/nuttx/arch.h identifies all of the APIs that must
-be provided by this architecture specific logic.  (It also includes
+This README will address the processor architecture specific files that
+are contained in the arch/<arch-name>/ directory.  The file
+include/nuttx/arch.h identifies all of the APIs that must be provided by
+this architecture specific logic.  (It also includes
 arch/<arch-name>/arch.h as described below).
 
 Directory Structure
@@ -72,12 +72,12 @@ include/<chip-name>/
   This sub-directory contains chip-specific header files.
 
 include/arch.h
-  This is a hook for any architecture specific definitions that may
-  be needed by the system.  It is included by include/nuttx/arch.h
+  This is a hook for any architecture specific definitions that may be
+  needed by the system.  It is included by include/nuttx/arch.h
 
 include/types.h
-  This provides architecture/toolchain-specific definitions for
-  standard types.  This file should typedef:
+  This provides architecture/toolchain-specific definitions for standard
+  types.  This file should typedef:
 
     _int8_t, _uint8_t, _int16_t, _uint16_t, _int32_t, _uint32_t
 
@@ -86,26 +86,27 @@ include/types.h
     _int24_t, _uint24_t, _int64_t, _uint64_t
 
   NOTE that these type names have a leading underscore character.  This
-  file will be included(indirectly) by include/stdint.h and typedef'ed to
-  the final name without the underscore character.  This roundabout way of
-  doings things allows the stdint.h to be removed from the include/
-  directory in the event that the user prefers to use the definitions
-  provided by their toolchain header files.
+  file will be included (indirectly) by include/stdint.h and typedef'ed
+  to the final name without the underscore character.  This roundabout
+  way of doings things allows the stdint.h to be removed from the
+  include/ directory in the event that the user prefers to use the
+  definitions provided by their toolchain header files.
 
     irqstate_t
 
-  Must be defined to the be the size required to hold the interrupt
+  Must be defined to the size required to hold the interrupt
   enable/disable state.
 
   This file will be included by include/sys/types.h and be made
   available to all files.
 
 include/irq.h
-  This file needs to define some architecture-specific functions (usually
-  inline if the compiler supports inlining) and structures.  These include:
+  This file needs to define some architecture-specific functions
+  (usually inline if the compiler supports inlining) and structures.
+  These include:
 
-  - struct xcptcontext.  This structure represents the saved context
-    of a thread.
+  - struct xcptcontext.  This structure represents the saved context of
+    a thread.
 
   - irqstate_t up_irq_save(void) -- Used to disable all interrupts.
 
@@ -113,11 +114,11 @@ include/irq.h
     enables to the same state as before up_irq_save was called.
 
   NOTE: These interfaces are not available to application code but can
-  only be used within the operating system code.  And, in general,
-  these functions should *never* be called directly, not unless you
-  know absolutely well what you are doing.  Rather you should typically
-  use the wrapper functions enter_critical_section() and leave_critical_section()
-  as prototyped in include/nuttx/irq.h.
+  only be used within the operating system code.  And, in general, these
+  functions should *never* be called directly, not unless you know
+  absolutely well what you are doing.  Rather you should typically use
+  the wrapper functions enter_critical_section() and
+  leave_critical_section() as prototyped in include/nuttx/irq.h.
 
   This file must also define NR_IRQS, the total number of IRQs supported
   by the board.
@@ -127,8 +128,8 @@ src/<chip-name>/
 
 src/Makefile
   This makefile will be executed to build the targets src/libup.a and
-  src/up_head.o.  The up_head.o file holds the entry point into the system
-  (power-on reset entry point, for example).  It will be used in
+  src/up_head.o.  The up_head.o file holds the entry point into the
+  system (power-on reset entry point, for example).  It will be used in
   the final link with libup.a and other system archives to generate the
   final executable.
 
@@ -139,13 +140,13 @@ state of these MCU ports.
 
 arch/sim - Linux/Cygwin simulation
     A user-mode port of NuttX to the x86 Linux platform is available.
-    The purpose of this port is primarily to support OS feature development.
-    This port does not support interrupts or a real timer (and hence no
-    round robin scheduler)  Otherwise, it is complete.
+    The purpose of this port is primarily to support OS feature
+    development.  This port does not support interrupts or a real timer
+    (and hence no round robin scheduler).  Otherwise, it is complete.
 
 arch/arm - ARM-based micro-controllers
-    This directory holds common ARM architectures.  At present, this includes
-    the following subdirectories:
+    This directory holds common ARM architectures.  At present, this
+    includes the following subdirectories:
 
     Architecture Support
       arch/arm/include and arch/arm/src/common
@@ -159,42 +160,44 @@ arch/arm - ARM-based micro-controllers
       arch/arm/include/a1x and arch/arm/src/a1x
       arch/arm/include/am335x and arch/arm/src/am335x
       arch/arm/include/c5471 and arch/arm/src/c5471
+      arch/arm/include/cxd56xx and arch/arm/src/cxd56xx
       arch/arm/include/dm320 and arch/arm/src/dm320
       arch/arm/include/efm32 and arch/arm/src/efm32
       arch/arm/include/imx1 and arch/arm/src/imx1
       arch/arm/include/imx6 and arch/arm/src/imx6
-      arch/arm/include/imx6 and arch/arm/src/imrt
+      arch/arm/include/imxrt and arch/arm/src/imxrt
       arch/arm/include/kinetis and arch/arm/src/kinetis
       arch/arm/include/kl and arch/arm/src/kl
       arch/arm/include/lc823450 and arch/arm/src/lc823450
       arch/arm/include/lpc17xx_40xx and arch/arm/src/lpc17xx_40xx
       arch/arm/include/lpc214x and arch/arm/src/lpc214x
-      arch/arm/include/lpc2378 and arch/arm/src/lpc2378.
+      arch/arm/include/lpc2378 and arch/arm/src/lpc2378
       arch/arm/include/lpc31xx and arch/arm/src/lpc31xx
       arch/arm/include/lpc43xx and arch/arm/src/lpc43xx
-      arch/arm/include/lpc43xx and arch/arm/src/lpc54xx
-      arch/arm/include/lpc43xx and arch/arm/src/max236xx
+      arch/arm/include/lpc54xx and arch/arm/src/lpc54xx
+      arch/arm/include/max326xx and arch/arm/src/max326xx
       arch/arm/include/moxart and arch/arm/src/moxart
-      arch/arm/include/nuc1xx and arch/arm/src/nrf52
+      arch/arm/include/nrf52 and arch/arm/src/nrf52
       arch/arm/include/nuc1xx and arch/arm/src/nuc1xx
+      arch/arm/include/s32k1xx and arch/arm/src/s32k1xx
       arch/arm/include/sam34 and arch/arm/src/sam34
-      arch/arm/include/sama45 and arch/arm/src/sama5
+      arch/arm/include/sama5 and arch/arm/src/sama5
       arch/arm/include/samd2l2 and arch/arm/src/samd2l2
-      arch/arm/include/samd2l2 and arch/arm/src/samd5e5
+      arch/arm/include/samd5e5 and arch/arm/src/samd5e5
       arch/arm/include/samv7 and arch/arm/src/samv7
       arch/arm/include/stm32 and arch/arm/src/stm32
-      arch/arm/include/stm32f7 and arch/arm/src/stm32f0
+      arch/arm/include/stm32f0l0g0 and arch/arm/src/stm32f0l0g0
       arch/arm/include/stm32f7 and arch/arm/src/stm32f7
-      arch/arm/include/stm32l4 and arch/arm/src/stm32h7
+      arch/arm/include/stm32h7 and arch/arm/src/stm32h7
       arch/arm/include/stm32l4 and arch/arm/src/stm32l4
       arch/arm/include/str71x and arch/arm/src/str71x
       arch/arm/include/tiva and arch/arm/src/tiva
       arch/arm/include/tms570 and arch/arm/src/tms570
-      arch/arm/include/tms570 and arch/arm/src/xmc4
+      arch/arm/include/xmc4 and arch/arm/src/xmc4
 
 arch/avr
-    This directory is dedicated to ports to the Atmel AVR (8-bit) and AVR32 (32-bit)
-    MCU families.  STATUS:  Under development.
+    This directory is dedicated to ports to the Atmel AVR (8-bit) and
+    AVR32 (32-bit) MCU families.  STATUS:  Under development.
 
     Architecture Support
       arch/avr/include/avr and arch/avr/src/avr
@@ -204,6 +207,7 @@ arch/avr
       arch/avr/include/atmega and arch/avr/src/atmega
       arch/avr/include/at90usb and arch/avr/src/at90usb
       arch/avr/include/at32uc3 and arch/avr/src/at32uc3
+      arch/avr/include/xmega and arch/avr/src/xmega
 
 arch/hc
     This directory is dedicated to ports to the Freescale HC family.
@@ -220,6 +224,13 @@ arch/mips
       arch/mips/include/pic32mx and arch/mips/src/pic32mx
       arch/mips/include/pic32mz and arch/mips/src/pic32mz
 
+arch/misoc
+    This directory is dedicated to ports to the Misoc family.
+
+    MCU support
+      arch/misoc/include/lm32 and arch/misoc/src/lm32
+      arch/misoc/include/minerva and arch/misoc/src/minerva
+
 arch/renesas - Support for Renesas and legacy Hitachi microcontrollers.
     This include SuperH and M16C.
 
@@ -228,6 +239,7 @@ arch/renesas - Support for Renesas and legacy Hitachi microcontrollers.
 
     MCU support
       arch/renesas/include/m16c and arch/renesas/src/m16c
+      arch/renesas/include/rx65n and arch/renesas/src/rx65n
       arch/renesas/include/sh1 and arch/renesas/src/sh1
 
 arch/or1k
@@ -242,12 +254,17 @@ arch/risc-v
       arch/risc-v/include/rv32im
 
     MCU support
-      arch/risc-v/include/gap8
-      arch/risc-v/include/nr5m100
+      arch/risc-v/include/fe310 and arch/risc-v/src/fe310
+      arch/risc-v/include/gap8 and arch/risc-v/src/gap8
+      arch/risc-v/include/k210 and arch/risc-v/src/k210
+      arch/risc-v/include/litex and arch/risc-v/src/litex
+      arch/risc-v/include/nr5m100 and arch/risc-v/src/nr5m100
+      arch/risc-v/include/rv32im and arch/risc-v/src/rv32im
+      arch/risc-v/include/rv64gc and arch/risc-v/src/rv64gc
 
 arch/x86 - Intel x86 architectures
-    This directory holds related, 32- and 64-bit architectures from Intel.
-    At present, this includes the following subdirectories:
+    This directory holds related, 32- and 64-bit architectures from
+    Intel.  At present, this includes the following subdirectories:
 
     Architecture Support
       arch/x86/include and arch/x86/src/common
@@ -256,8 +273,18 @@ arch/x86 - Intel x86 architectures
       arch/x86/include/i486 and arch/x86/src/i486
       arch/x86/include/qemu and arch/x86/src/qemu
 
-arch/xtensa
+arch/x86_64 - Intel x86 64-bit architectures
+    This directory holds related 64-bit architectures from Intel.  At
+    present, this includes the following subdirectories:
 
+    Architecture Support
+      arch/x86_64/include and arch/x86_64/src/common
+
+    MCU support
+      arch/x86_64/include/intel64 and arch/x86_64/src/intel64
+      arch/x86_64/include/qemu and arch/x86_64/src/qemu
+
+arch/xtensa
     Implementations based on the Cadence® Tensilica® Xtensa® processors,
     such as the Xtensa LX6 dataplane processing units (DPUs).  At
     present, this includes the following subdirectories: