You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by bt...@apache.org on 2020/11/22 02:09:27 UTC

[incubator-nuttx] branch master updated (e9bd306 -> d118249)

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

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


    from e9bd306  boards/arm/stm32/stm32ldiscovery: modernize board init little bit, userleds and buttons like for other boards
     new 2c2f2bc  Documentation: improve menuselection tag appearance
     new 206402c7 Documentation: add TODO
     new 31f7746  Documentation: reorder introduction in index
     new c6270b5  Documentation: remove TODO
     new ce146e9  Documentation: remove empty subheading
     new 3aacc50  Documentation: various improvements to quickstart section
     new d118249  Documentation: remove empty releases section; put reference up higher

The 7 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 Documentation/_static/custom.css            |   8 ++
 Documentation/components/power.rst          |   4 +
 Documentation/index.rst                     |   5 +-
 Documentation/introduction/about.rst        |   9 +-
 Documentation/introduction/trademarks.rst   |   2 -
 Documentation/quickstart/build_and_make.rst |  59 ---------
 Documentation/quickstart/compiling.rst      |  27 ++---
 Documentation/quickstart/configuring.rst    | 111 +++++++++--------
 Documentation/quickstart/debugging.rst      | 178 ++++++++++++++++++----------
 Documentation/quickstart/index.rst          |   1 -
 Documentation/quickstart/organization.rst   |  12 +-
 Documentation/quickstart/running.rst        | 118 +-----------------
 Documentation/releases/index.rst            |   6 -
 13 files changed, 210 insertions(+), 330 deletions(-)
 delete mode 100644 Documentation/quickstart/build_and_make.rst
 delete mode 100644 Documentation/releases/index.rst


[incubator-nuttx] 02/07: Documentation: add TODO

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 206402c7e040796c5cb3d3419e57987a80525c9f
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 19:53:18 2020 -0300

    Documentation: add TODO
---
 Documentation/components/power.rst | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Documentation/components/power.rst b/Documentation/components/power.rst
index 7b9e35a..7d96719 100644
--- a/Documentation/components/power.rst
+++ b/Documentation/components/power.rst
@@ -2,6 +2,10 @@
 Power Management
 ================
 
+.. todo::
+  This needs to be updated to account for the different governors
+  besides the activity-based one.
+
 NuttX supports a simple power management (PM) sub-system which:
 
   - Monitors activity from drivers (and from other parts of the


[incubator-nuttx] 06/07: Documentation: various improvements to quickstart section

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 3aacc506dc9847e4e253c56616d8b699a46a1dca
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 19:55:16 2020 -0300

    Documentation: various improvements to quickstart section
---
 Documentation/quickstart/build_and_make.rst |  59 ---------
 Documentation/quickstart/compiling.rst      |  27 ++---
 Documentation/quickstart/configuring.rst    | 111 +++++++++--------
 Documentation/quickstart/debugging.rst      | 178 ++++++++++++++++++----------
 Documentation/quickstart/index.rst          |   1 -
 Documentation/quickstart/organization.rst   |  12 +-
 Documentation/quickstart/running.rst        | 118 +-----------------
 7 files changed, 193 insertions(+), 313 deletions(-)

diff --git a/Documentation/quickstart/build_and_make.rst b/Documentation/quickstart/build_and_make.rst
deleted file mode 100644
index e69bd09..0000000
--- a/Documentation/quickstart/build_and_make.rst
+++ /dev/null
@@ -1,59 +0,0 @@
-.. include:: /substitutions.rst
-.. _build_and_make:
-
-Build and Make Details
-======================
-
-This is included for reference, and it's not necessary to know all these details.
-
-As described in :ref:`compiling`, you use ``make`` at the root ``nuttx/`` directory to build NuttX. This is also
-referenced as ``$(TOPDIR)`` in the ``Makefile``.
-
-Root Directory
---------------
-
-The ``$(TOPDIR)`` directory holds:
-
--  The top level ```Makefile`` <#topmakefile>`__ that controls the
-   NuttX build.
-
-That directory also holds:
-
--  The makefile fragment :ref:`.config <nuttx_boards>`
-   that describes the current configuration, and
--  The makefile fragment :ref:`Make.defs <nuttx_boards>`
-   that provides customized build targets.
-
-Environment Variables
----------------------
-
-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
-:ref:`Make.defs <nuttx_boards>`.
-
-First Time Make
----------------
-
-Additional configuration actions will be taken the first time that system is built. These additional steps
-include:
-
--  Auto-generating the file ``include/nuttx/config.h`` using the
-   ``$(TOPDIR)/.config`` file.
--  Auto-generating the file ``$(TOPDIR)/.version`` with version
-   0.0 if one does not exist.
--  Auto-generating the file ``include/nuttx/version.h`` using the
-   ``$(TOPDIR)/.version`` file.
--  Creating a link to
-   ``$(TOPDIR)/arch/``\ *<arch-name>*\ ``/include`` at
-   ``$(TOPDIR)/include/arch``.
--  Creating a link to
-   ``$(TOPDIR)/boards/``\ *<arch-name>*\ ``/``\ *<chip-name>*\ ``/``\ *<board-name>*\ ``/include``
-   at ``$(TOPDIR)/include/arch/board``.
--  Creating a link to
-   ``$(TOPDIR)/boards/``\ *<arch-name>*\ ``/``\ *<chip-name>*\ ``/``\ *<board-name>*\ ``/src``
-   at ``$(TOPDIR)/arch/``\ *<arch-name>*\ ``/src/board``
--  Creating a link to ``${APPDIR}/include`` at
-   ``$(TOPDIR)/include/apps``
--  Creating make dependencies.
diff --git a/Documentation/quickstart/compiling.rst b/Documentation/quickstart/compiling.rst
index 55f81d1..b2c5fd6 100644
--- a/Documentation/quickstart/compiling.rst
+++ b/Documentation/quickstart/compiling.rst
@@ -36,23 +36,15 @@ to ``configure.sh`` and indicate your host platform, such as:
 The ``-l`` tells use that we're on Linux (macOS and Windows builds are
 possible). Use the ``-h`` argument to see all available options.
 
-Customize Your Configuration (Optional)
-=======================================
-
-This step is optional. Right now, this is mainly to get familiar with how it
-works– you don't need to change any of the options now, but knowing how
-to do this will come in handy later.
-
-There are a lot of options. We'll cover a few of them here.
-Don't worry about the complexity– you don't have to use most of the options.
+You can then customize this configuration by using the menu based
+configuration system with:
 
 .. code-block:: console
 
    $ cd nuttx/
    $ make menuconfig
-
-.. todo::
-  Explain some useful options.
+   
+Modifying the configuration is covered in :doc:`configuring`.
 
 Build NuttX
 ===========
@@ -62,11 +54,11 @@ We can now build NuttX. To do so, you can simply run:
   .. code-block:: console
 
      $ cd nuttx/
-     $ make make
+     $ make
 
 The build will complete by generating the binary outputs
-inside `nuttx` directory. Typically this includes the `nuttx`
-ELF file (suitable for debugging using `gdb`) and a `nuttx.bin`
+inside ``nuttx`` directory. Typically this includes the ``nuttx``
+ELF file (suitable for debugging using ``gdb``) and a ``nuttx.bin``
 file that can be flashed to the board.
 
 To clean the build, you can do:
@@ -75,11 +67,6 @@ To clean the build, you can do:
 
      $ make clean
 
-.. warning::
-  At the moment it is recommended that after modifying the
-  configuration you first clean before building again. This
-  is currently worked on.
-
 ----
 
 Next up is :ref:`running`.
diff --git a/Documentation/quickstart/configuring.rst b/Documentation/quickstart/configuring.rst
index a289969..0213d41 100644
--- a/Documentation/quickstart/configuring.rst
+++ b/Documentation/quickstart/configuring.rst
@@ -6,48 +6,31 @@ Configuring
 
 Apache NuttX is a very configurable operating system. Nearly all features can be configured in or
 out of the system. This makes it possible to compile a build tailored for your hardware and
-application. It also makes configuring the system complex at times.
-
-There is a configuration system that can be used on the commandline or in a GUI. I've found
-the easiest way to configured Apache NuttX is to use the ``menuconfig`` system. This is used
-via a terminal program and allows quick access to all of Apache NuttX's features via a system of
-menus.
+application.
 
 The Apache NuttX configuration system uses Linux's
-`kconfig system <https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt>`_ adapted for use with Apache
-NuttX. Here's info on Linux's kconfig `menuconfig <https://en.wikipedia.org/wiki/Menuconfig>`_ system.
-
-After you've configured your board (see :ref:`compiling`), you can use the menuconfig system
-to change the configuration. Once you've configured, you can compile to make a build that
-has your configuration options selected.
-
-#. Initialize Board Configuration
+`kconfig system <https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt>`_ which
+includes various frontends that allow you to modify configuration easily. Usually, the ``menuconfig``
+frontend is used, which is a console based menu system (more info `here <https://en.wikipedia.org/wiki/Menuconfig>`_).
 
-   Here we'll use the simulator since that's the simplest to explain. You can do this with
-   any board and base configuration.  Note here you should be supplying `configure.sh` the correct flag
-   for your build environment:
+As previously explained in :doc:`compiling`, the first step is to load a premade configuration for
+your board. Then, you can modify this configuration to your liking.
 
-    .. code-block:: bash
+In this example, we will show how you modify the default configuration of the ``sim`` build.
 
-       -l selects the Linux (l) host environment.
-       -m selects the macOS (m) host environment.
-       -c selects the Windows host and Cygwin (c) environment.
-       -g selects the Windows host and MinGW/MSYS environment.
-       -n selects the Windows host and Windows native (n) environment.
-
-   Select the simulator configuration for a Linux host:
+#. Initialize Board Configuration
 
-    .. code-block:: bash
+    .. code-block:: console
 
        $ cd nuttx
-       $ make distclean  # make a clean start, clearing out old configurations
        $ ./tools/configure.sh -l sim:nsh
          Copy files
          Select CONFIG_HOST_LINUX=y
          Refreshing...
-#. Make
+         
+#. Build & run
 
-    .. code-block:: bash
+    .. code-block:: console
 
        $ make clean; make
        $ ./nuttx
@@ -55,15 +38,16 @@ has your configuration options selected.
 
    From another terminal window, kill the simulator:
 
-    .. code-block:: bash
+    .. code-block:: console
 
        $ pkill nuttx
 
-#. Menu Configuration
+#. Modify configuration
 
-   Showing that ``login:`` is annyoing. Let's use the ``menuconfig`` system to turn it off.
+   In this case we will remove the login feature (which will boot straight to the prompt). To
+   do so, we use the ``menuconfig`` frontend.
 
-    .. code-block:: bash
+    .. code-block:: console
 
        $ make menuconfig
 
@@ -76,27 +60,24 @@ has your configuration options selected.
 
    |br|
 
-#. Application Configuration
+   The NSH Login setting is under :menuselection:`Application Configuration --> NSH Library`. You
+   can use :kbd:`🢁` and :kbd:`🢃` keys to navigate and :kbd:`↵` to enter a submenu.
+   To disable the corresponding setting go to :menuselection:`Console Login` and press :kbd:`spacebar` to
+   it (so that it has a blank space instead of a star in it).
 
-   The NSH Login setting is under ``Application Configuration > NSH Library``. Use
-   the up and down arrows to navigate to ``Application Configuration``; hit ``<return>`` to
-   select it. Now you're in the ``Application Configuration`` menu. Use the arrows to go
-   down to ``NSH Library`` and select that. Now navigate down to ``Console Login`` and use
-   the spacebar to uncheck that setting (so that it has a blank space instead of a star in it).
+   Now you need to exit ``menuconfig`` and save the modified configuration. Use the :kbd:`🡸` and
+   :kbd:`🡺` arrow keys to navigate the lower menu. If you select :menuselection:`Exit` you will be
+   prompted to save the config.
 
-   Now let's save. Use the right and left arrow keys to select the ``Exit`` menu item at the
-   bottom of the screen. Hit ``<return>`` to select it, hit ``<return>`` again, and again, finally
-   hitting ``<return>`` in the ``Save Configuration`` dialog box.
+#. Build with the new Configuration
 
-#. Make the New Configuration
+    .. code-block:: console
 
-    .. code-block:: bash
-
-       $ make clean; make
+       $ make
 
 #. Run
 
-    .. code-block:: bash
+    .. code-block:: console
 
        $ ./nuttx
        NuttShell (NSH) NuttX-8.2
@@ -104,8 +85,42 @@ has your configuration options selected.
 
    Success!
 
+.. tip::
    If you find that message of the day (MOTD) annoying and want to turn that off, it's
-   configured in ``Application Configuration > NSH Library >> Message of the Day (MOTD)``.
+   configured in :menuselection:`Application Configuration --> NSH Library --> Message of the Day (MOTD)`.
+   
+Fast configuration changes
+--------------------------
+
+If you know exactly which configuration symbol you want to change, you can use the ``kconfig-tweak`` tool (comes with the ``kconfig-frontends`` package) to quickly change a setting without going into the configuration frontend. This is useful to change settings such as debug options:
+
+.. code-block:: console
+
+   $ kconfig-tweak --disable CONFIG_DEBUG_NET
+   $ make olddefconfig  # needed to have the kconfig system check the config
+   $ kconfig-tweak --enable CONFIG_DEBUG_NET
+   $ make olddefconfig
+
+This is also useful to script configuration changes that you perform often:
+
+.. code-block:: console
+
+   #!/bin/bash
+
+   kconfig-tweak --disable CONFIG_DEBUG_ALERT
+   kconfig-tweak --disable CONFIG_DEBUG_FEATURES
+   kconfig-tweak --disable CONFIG_DEBUG_ERROR
+   kconfig-tweak --disable CONFIG_DEBUG_WARN
+   kconfig-tweak --disable CONFIG_DEBUG_INFO
+   kconfig-tweak --disable CONFIG_DEBUG_ASSERTIONS
+   kconfig-tweak --disable CONFIG_DEBUG_NET
+   kconfig-tweak --disable CONFIG_DEBUG_NET_ERROR
+   kconfig-tweak --disable CONFIG_DEBUG_NET_WARN
+   kconfig-tweak --disable CONFIG_DEBUG_NET_INFO
+   kconfig-tweak --disable CONFIG_DEBUG_SYMBOLS
+   kconfig-tweak --disable CONFIG_DEBUG_NOOPT
+   kconfig-tweak --disable CONFIG_SYSLOG_TIMESTAMP
+   make oldconfig
 
 ----
 
diff --git a/Documentation/quickstart/debugging.rst b/Documentation/quickstart/debugging.rst
index 379240d..299326b 100644
--- a/Documentation/quickstart/debugging.rst
+++ b/Documentation/quickstart/debugging.rst
@@ -14,11 +14,7 @@ Debug Logging
 NuttX has a powerful system logging facility (syslog) with ``info``, ``warn``, and ``error`` levels. You can enable
 debugging for your build for the subsystem or feature by using the ``menuconfig`` system.
 
-.. code-block:: console
-
-   $ make menuconfig
-
-The debug options are available under ``Build Setup`` > ``Debug Options``. You will most likely have to enable the
+The debug options are available under :menuselection:`Build Setup --> Debug Options`. You will most likely have to enable the
 following options:
 
 * ``Enable Debug Features`` — selecting this will turn on subsystem-level debugging options, they will become visible
@@ -44,82 +40,140 @@ the area you're interested in, and leave the rest disabled, save the config, and
 list of debug feature logging functions in the file
 `debug.h <https://github.com/apache/incubator-nuttx/blob/master/include/debug.h>`__.
 
-Syslog timestamps can be enabled in the ``menuconfig`` system using ``Device Drivers`` > ``System Logging`` > ``Prepend
-timestamp to syslog message`` (``CONFIG_SYSLOG_TIMESTAMP``).
+Syslog timestamps can be enabled in the configuration in :menuselection:`Device Drivers --> System Logging --> Prepend
+timestamp to syslog message` (``CONFIG_SYSLOG_TIMESTAMP``).
 
 You may need to do a little bit of experimenting to find the combination of logging settings that work for the problem
 you're trying to solve. See the file `debug.h <https://github.com/apache/incubator-nuttx/blob/master/include/debug.h>`_
-for available debug settings that are available. This can also be configured via the ``menuconfig`` system.
+for available debug settings that are available.
 
 There are also subsystems that enable USB trace debugging, and you can log to memory too, if you need the logging to be
 faster than what the console can output.
 
-Changing Debug Settings Quickly
--------------------------------
+Debugging with ``openocd`` and ``gdb``
+--------------------------------------
 
-You can use the ``kconfig-tweak`` script that comes with the ``kconfig-frontends`` tools to quickly change debug settings,
-for instance turning them on or off before doing a build:
+To debug our Nucleo board using its embedded SWD debug adapter,
+start ``openocd`` with the following command:
 
 .. code-block:: console
 
-   $ kconfig-tweak --disable CONFIG_DEBUG_NET
-   $ make olddefconfig  # needed to have the kconfig system check the config
-   $ kconfig-tweak --enable CONFIG_DEBUG_NET
-   $ make olddefconfig
+  $ openocd -f interface/st-link-v2.cfg -f target/stm32f1x.cfg
 
-You can put a bunch of these into a simple script to configure the logging the way you want:
+This will start a ``gdb`` server. Then, start ``gdb`` with:
 
 .. code-block:: console
 
-   #!/bin/bash
-
-   kconfig-tweak --disable CONFIG_DEBUG_ALERT
-   kconfig-tweak --disable CONFIG_DEBUG_FEATURES
-   kconfig-tweak --disable CONFIG_DEBUG_ERROR
-   kconfig-tweak --disable CONFIG_DEBUG_WARN
-   kconfig-tweak --disable CONFIG_DEBUG_INFO
-   kconfig-tweak --disable CONFIG_DEBUG_ASSERTIONS
-   kconfig-tweak --disable CONFIG_DEBUG_NET
-   kconfig-tweak --disable CONFIG_DEBUG_NET_ERROR
-   kconfig-tweak --disable CONFIG_DEBUG_NET_WARN
-   kconfig-tweak --disable CONFIG_DEBUG_NET_INFO
-   kconfig-tweak --disable CONFIG_DEBUG_SYMBOLS
-   kconfig-tweak --disable CONFIG_DEBUG_NOOPT
-   kconfig-tweak --disable CONFIG_SYSLOG_TIMESTAMP
-   make oldconfig
-
-
-JTAG/SWD Debugging
-------------------
-
-`JTAG <https://en.wikipedia.org/wiki/JTAG>`_ is a set of standards that specify a way to attach a hardware device to
-your embedded board, and then remotely control the CPU. You can load code, start, stop, step through the program, and
-examine variables and memory. `SWD <https://en.wikipedia.org/wiki/JTAG#Similar_interface_standards>`_ is an
-Arm-specific interface with a reduced number of signals which can be used alternatively.
-
-The NuttX operating system uses `threads <https://en.wikipedia.org/wiki/Thread_(computing)>`_, so you need a
-thread-aware debugger to do more than load code, start, and stop it. A thread-aware debugger will allow you to switch
-threads to the one that is running the code you're interested in, for instance your application, or an operating system
-network thread. So far, `OpenOCD <http://openocd.org/>`_ is the only supported NuttX thread-aware debugger.
-
-.. note::
-  OpenOCD hasn't announced a stable release for a few years but the development remains active. You'll need to use a
-  version of OpenOCD recent enough so that it includes NuttX support as `contributed by Sony upstream
-  <http://openocd.zylin.com/#/c/4103/>`_. The version included in official OS repositories will probably be too old.
-  You should build from source or use one of the unofficial, more recent builds. See `Getting OpenOCD
-  <http://openocd.org/getting-openocd/>`_ for more details.
-
-You will need a board with a JTAG or SWD connector and an `OpenOCD-compatible hardware adapter
-<http://openocd.org/supported-jtag-interfaces/>`_, ideally a fast one (USB 2.0 High Speed). For example an `Olimex
-ARM USB TINY H <https://www.olimex.com/Products/ARM/JTAG/ARM-USB-TINY-H/>`_ or a `Segger J-Link
-<https://www.segger.com/products/debug-probes/j-link/>`_. Many other adapters work too, follow the OpenOCD
-instructions and the instructions that came with your adapter.
+  $ cd nuttx/
+  $ gdb-multiarch nuttx/nuttx
+
+Inside ``gdb`` console, connect to the ``gdb`` server with:
+
+.. code-block::
+
+  (gdb) target extended-remote :3333
+
+You can now use standard ``gdb`` commands.
+
+Debugging with an external JTAG adapter
+---------------------------------------
+
+.. todo::
+  Explain this with openocd. It gives the impression that JTAG requires
+  a specific tool. Also, some of the example commands apply to both cases.
+  This repeats some of the above.
+
+If your board does not have an embedded programmer and uses
+`JTAG <https://en.wikipedia.org/wiki/JTAG>`_ connector instead,
+things are a bit different. This guide assumes you have a JTAG hardware debugger like a
+`Segger J-Link <https://www.segger.com/products/debug-probes/j-link/>`_.
+JTAG is a set of standards that let you
+attach a hardware device to your embedded board, and then remotely control the CPU.
+You can load code, start, stop, step through the program, and examine variables and memory.
+
+#. Attach the Debugger Cables
+
+#. Start the Debugger
+
+   Refer to your JTAG debugger's documentation for information on how to start a GDB Server process that gdb can
+   communicate with to load code and start, stop, and step the embedded board's CPU. Your command line may be
+   different from this one.
+
+    .. code-block:: console
+
+       $ JLinkGDBServer -device ATSAMA5D27 -if JTAG -speed 1000 -JTAGConf -1,-1
+
+#. Launch the GNU Debugger
+
+   In another terminal window, launch the GDB. In the case of this guide, this came with the
+   ARM Embedded GNU Toolchain we downloaded in the Install step.
+
+    .. code-block:: console
+
+       $ cd nuttx/
+       $ gdb-multiarch nuttx/nuttx
+
+#. Set gdb to talk with the J-Link
+
+    ::
+
+       (gdb) target extended-remote :2331
+
+#. Reset the board
+
+    ::
+
+       (gdb) mon reset
+
+#. You may need to switch to the serial console to hit a key to stop the board from booting from its boot monitor
+   (U-Boot, in the case of the SAMA5 boards from Microchip).
+
+#. Halt the board
+
+    ::
+
+       (gdb) mon halt
+
+#. Load nuttx
+
+    ::
+
+       (gdb) load nuttx
+       `/home/adamf/src/nuttx-sama5d36-xplained/nuttx/nuttx' has changed; re-reading symbols.
+       Loading section .text, size 0x9eae4 lma 0x20008000
+       Loading section .ARM.exidx, size 0x8 lma 0x200a6ae4
+       Loading section .data, size 0x125c lma 0x200a6aec
+       Start address 0x20008040, load size 654664
+       Transfer rate: 75 KB/sec, 15587 bytes/write.
+       (gdb)
+
+#. Set a breakpoint
+
+    ::
+
+       (gdb) breakpoint nsh_main
+
+#. Start nuttx
+
+    ::
+
+       (gdb) continue
+       Continuing.
+
+       Breakpoint 1, nsh_main (argc=1, argv=0x200ddfac) at nsh_main.c:208
+       208	  sched_getparam(0, &param);
+       (gdb) continue
+       Continuing.
+
+Debugging Shortcuts
+-------------------
+
+Note that you can abbreviate ``gdb`` commands, ``info b`` is a shortcut for
+``information breakpoints``; ``c`` works the same as ``continue``, etc.
 
 See this article for more info:
 `Debugging a Apache NuttX target with GDB and OpenOCD <https://micro-ros.github.io/docs/tutorials/advanced/nuttx/debugging/>`_.
 
-See the section :ref:`Running <running>` for a brief tutorial on how to use GDB.
-
 ----
 
 Next up is :ref:`organization`.
diff --git a/Documentation/quickstart/index.rst b/Documentation/quickstart/index.rst
index 0a02947..e922ddc 100644
--- a/Documentation/quickstart/index.rst
+++ b/Documentation/quickstart/index.rst
@@ -22,5 +22,4 @@ to build NuttX.
   configuring.rst
   debugging.rst
   organization.rst
-  build_and_make.rst
 
diff --git a/Documentation/quickstart/organization.rst b/Documentation/quickstart/organization.rst
index e2a1044..eecdc52 100644
--- a/Documentation/quickstart/organization.rst
+++ b/Documentation/quickstart/organization.rst
@@ -1,4 +1,9 @@
 .. include:: /substitutions.rst
+
+.. todo::
+  This is mostly untouched from the original documentation. It does
+  not really belong to "quickstart". Also, this needs cleanup.
+
 .. _organization:
 
 ===================
@@ -506,10 +511,5 @@ support.
 ==================
 
 The top-level ``Makefile`` in the ``$(TOPDIR)`` directory contains
-all of the top-level control logic to build NuttX. Use of this
-``Makefile`` to build NuttX is described
-`below <#buildingnuttx>`__.
-
-----
+all of the top-level control logic to build NuttX.
 
-Next up is :ref:`build_and_make`.
diff --git a/Documentation/quickstart/running.rst b/Documentation/quickstart/running.rst
index 4bc59b2..6ad48e5 100644
--- a/Documentation/quickstart/running.rst
+++ b/Documentation/quickstart/running.rst
@@ -40,7 +40,7 @@ latest Git version. To install it you should:
   $ git clone git://git.code.sf.net/p/openocd/code openocd
   $ cd openocd
   $ ./bootstrap
-  $ ./configure --prefix install/
+  $ ./configure --prefix=install/
   $ make install
 
 The resulting installation will be under ``openocd/install``. You can add
@@ -71,122 +71,6 @@ of your choice where you will see the ``nsh>`` prompt:
 
     $ gtkterm -s 115200 -p /dev/ttyUSB0
 
-
-Debugging
-=========
-
-Using ``openocd`` you can also debug NuttX. To do so, first run:
-
-.. code-block:: console
-
-  $ openocd -f interface/st-link-v2.cfg -f target/stm32f1x.cfg
-
-which will start a GDB server. Then, start ``gdb`` as:
-
-.. code-block:: console
-
-  $ cd nuttx/
-  $ gdb-multiarch nuttx/nuttx
-
-Inside ``gdb`` console, connect to the ``openocd`` server with:
-
-.. code-block::
-
-  (gdb) target extended-remote :3333
-
-You can debug using standard ``gdb`` commands.
-
-Advanced Debugging with JTAG
-----------------------------
-
-If your board does not have an embedded programmer and uses
-`JTAG <https://en.wikipedia.org/wiki/JTAG>`_ connector instead,
-things are a bit different. This guide assumes you have a JTAG hardware debugger like a
-`Segger J-Link <https://www.segger.com/products/debug-probes/j-link/>`_.
-JTAG is a set of standards that let you
-attach a hardware device to your embedded board, and then remotely control the CPU.
-You can load code, start, stop, step through the program, and examine variables and memory.
-
-#. Attach the Debugger Cables
-
-#. Start the Debugger
-
-   Refer to your JTAG debugger's documentation for information on how to start a GDB Server process that gdb can
-   communicate with to load code and start, stop, and step the embedded board's CPU. Your command line may be
-   different from this one.
-
-    .. code-block:: console
-
-       $ JLinkGDBServer -device ATSAMA5D27 -if JTAG -speed 1000 -JTAGConf -1,-1
-
-#. Launch the GNU Debugger
-
-   In another terminal window, launch the GDB. In the case of this guide, this came with the
-   ARM Embedded GNU Toolchain we downloaded in the Install step.
-
-    .. code-block:: console
-
-       $ cd nuttx/
-       $ gdb-multiarch nuttx/nuttx
-
-#. Set gdb to talk with the J-Link
-
-    ::
-
-       (gdb) target extended-remote :2331
-
-#. Reset the board
-
-    ::
-
-       (gdb) mon reset
-
-#. You may need to switch to the serial console to hit a key to stop the board from booting from its boot monitor
-   (U-Boot, in the case of the SAMA5 boards from Microchip).
-
-#. Halt the board
-
-    ::
-
-       (gdb) mon halt
-
-#. Load nuttx
-
-    ::
-
-       (gdb) load nuttx
-       `/home/adamf/src/nuttx-sama5d36-xplained/nuttx/nuttx' has changed; re-reading symbols.
-       Loading section .text, size 0x9eae4 lma 0x20008000
-       Loading section .ARM.exidx, size 0x8 lma 0x200a6ae4
-       Loading section .data, size 0x125c lma 0x200a6aec
-       Start address 0x20008040, load size 654664
-       Transfer rate: 75 KB/sec, 15587 bytes/write.
-       (gdb)
-
-#. Set a breakpoint
-
-    ::
-
-       (gdb) breakpoint nsh_main
-
-#. Start nuttx
-
-    ::
-
-       (gdb) continue
-       Continuing.
-
-       Breakpoint 1, nsh_main (argc=1, argv=0x200ddfac) at nsh_main.c:208
-       208	  sched_getparam(0, &param);
-       (gdb) continue
-       Continuing.
-
-Debugging Shortcuts
--------------------
-
-Note that you can abbreviate ``gdb`` commands, ``info b`` is a shortcut for
-``information breakpoints``; ``c`` works the same as ``continue``, etc.
-
 ----
 
 Next up is :ref:`configuring`.


[incubator-nuttx] 01/07: Documentation: improve menuselection tag appearance

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 2c2f2bc7959896c770c3d0726c1c4785fdca1f8c
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 19:52:44 2020 -0300

    Documentation: improve menuselection tag appearance
---
 Documentation/_static/custom.css | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/_static/custom.css b/Documentation/_static/custom.css
index a861bdb..521e0f7 100644
--- a/Documentation/_static/custom.css
+++ b/Documentation/_static/custom.css
@@ -78,3 +78,11 @@ kbd {
   -webkit-border-radius: 3px;
   text-shadow: 0 1px 0 #fff;
 }
+
+span.menuselection
+{
+  margin: 0px 0.1em;
+  padding: 0.1em 0.1em;
+  border-radius: 3px;
+  border: 1px solid rgb(204, 204, 204);
+}


[incubator-nuttx] 05/07: Documentation: remove empty subheading

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit ce146e91efb73ae52586ce9831ff6ae765da09fa
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 19:54:47 2020 -0300

    Documentation: remove empty subheading
---
 Documentation/introduction/about.rst | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/Documentation/introduction/about.rst b/Documentation/introduction/about.rst
index fdee8aa..7c76e86 100644
--- a/Documentation/introduction/about.rst
+++ b/Documentation/introduction/about.rst
@@ -1,9 +1,6 @@
-===========
-About NuttX
-===========
-
-Goals
-=====
+==================
+About Apache NuttX
+==================
 
 NuttX is a real time embedded operating system (RTOS). Its goals are:
 


[incubator-nuttx] 07/07: Documentation: remove empty releases section; put reference up higher

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit d118249566913d68bb35be98fb110d40c77f5072
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 21:49:39 2020 -0300

    Documentation: remove empty releases section; put reference up higher
---
 Documentation/index.rst          | 3 +--
 Documentation/releases/index.rst | 6 ------
 2 files changed, 1 insertion(+), 8 deletions(-)

diff --git a/Documentation/index.rst b/Documentation/index.rst
index 403ad18..832c250 100644
--- a/Documentation/index.rst
+++ b/Documentation/index.rst
@@ -26,9 +26,8 @@ Last Updated: |today|
    boards/index.rst
    components/index.rst
    applications/index.rst
-   guides/index.rst
    reference/index.rst
-   releases/index.rst
+   guides/index.rst
    contributing/index.rst
    glossary.rst
 
diff --git a/Documentation/releases/index.rst b/Documentation/releases/index.rst
deleted file mode 100644
index 005b06f..0000000
--- a/Documentation/releases/index.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-Releases
-========
-
-.. todo::
-  This should link (or include?) release notes. Maybe only show some recent ones and link
-  older ones


[incubator-nuttx] 03/07: Documentation: reorder introduction in index

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 31f77461b3fcb80c1048f74c097b2e8bf3d968c0
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 19:53:56 2020 -0300

    Documentation: reorder introduction in index
---
 Documentation/index.rst | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/index.rst b/Documentation/index.rst
index 26a1338..403ad18 100644
--- a/Documentation/index.rst
+++ b/Documentation/index.rst
@@ -20,9 +20,9 @@ Last Updated: |today|
    :maxdepth: 2
 
    Home <self>
+   introduction/index.rst
    quickstart/index.rst
    introduction/inviolables.rst
-   introduction/index.rst
    boards/index.rst
    components/index.rst
    applications/index.rst


[incubator-nuttx] 04/07: Documentation: remove TODO

Posted by bt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit c6270b552b2b57809a1ac81776a0a301db4a6560
Author: Matias N <ma...@protobits.dev>
AuthorDate: Sat Nov 21 19:54:22 2020 -0300

    Documentation: remove TODO
---
 Documentation/introduction/trademarks.rst | 2 --
 1 file changed, 2 deletions(-)

diff --git a/Documentation/introduction/trademarks.rst b/Documentation/introduction/trademarks.rst
index 025db4e..01f81b9 100644
--- a/Documentation/introduction/trademarks.rst
+++ b/Documentation/introduction/trademarks.rst
@@ -1,5 +1,3 @@
-.. todo:: Revise status of NuttX trademark
-
 ==========
 Trademarks
 ==========