blob: 6366c8798cec78c7a86f22c156cc2ce08e1f925f [file] [log] [blame]
<!--
Documentation/_templates/layout.html
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership. The
ASF licenses this file to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance with the
License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
-->
<!DOCTYPE html>
<html class="writer-html5" lang="en">
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Guides &mdash; NuttX latest documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="../_static/css/theme.css" />
<link rel="stylesheet" type="text/css" href="../_static/copybutton.css" />
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
<link rel="shortcut icon" href="../_static/favicon.ico"/>
<script src="../_static/jquery.js"></script>
<script src="../_static/_sphinx_javascript_frameworks_compat.js"></script>
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/sphinx_highlight.js"></script>
<script src="../_static/clipboard.min.js"></script>
<script src="../_static/copybutton.js"></script>
<script src="../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="NFS Client How-To" href="nfs.html" />
<link rel="prev" title="FAQ" href="../faq/index.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../index.html" class="icon icon-home"> NuttX
</a>
<!-- this version selector is quite ugly, should be probably replaced by something
more modern -->
<div class="version-selector">
<select onchange="javascript:location.href = this.value;">
<option value="../../latest" selected="selected">latest</option>
<option value="../../10.0.0" >10.0.0</option>
<option value="../../10.0.1" >10.0.1</option>
<option value="../../10.1.0" >10.1.0</option>
<option value="../../10.2.0" >10.2.0</option>
<option value="../../10.3.0" >10.3.0</option>
<option value="../../11.0.0" >11.0.0</option>
<option value="../../12.0.0" >12.0.0</option>
<option value="../../12.1.0" >12.1.0</option>
<option value="../../12.2.0" >12.2.0</option>
<option value="../../12.2.1" >12.2.1</option>
<option value="../../12.3.0" >12.3.0</option>
<option value="../../12.4.0" >12.4.0</option>
<option value="../../12.5.0" >12.5.0</option>
<option value="../../12.5.1" >12.5.1</option>
<option value="../../12.6.0" >12.6.0</option>
<option value="../../12.7.0" >12.7.0</option>
<option value="../../12.8.0" >12.8.0</option>
<option value="../../12.9.0" >12.9.0</option>
<option value="../../12.10.0" >12.10.0</option>
<option value="../../12.11.0" >12.11.0</option>
</select>
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../index.html">Home</a></li>
<li class="toctree-l1"><a class="reference internal" href="../introduction/index.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../quickstart/index.html">Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contributing/index.html">Contributing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../introduction/inviolables.html">The Inviolable Principles of NuttX</a></li>
<li class="toctree-l1"><a class="reference internal" href="../platforms/index.html">Supported Platforms</a></li>
<li class="toctree-l1"><a class="reference internal" href="../components/index.html">OS Components</a></li>
<li class="toctree-l1"><a class="reference internal" href="../applications/index.html">Applications</a></li>
<li class="toctree-l1"><a class="reference internal" href="../implementation/index.html">Implementation Details</a></li>
<li class="toctree-l1"><a class="reference internal" href="../reference/index.html">API Reference</a></li>
<li class="toctree-l1"><a class="reference internal" href="../faq/index.html">FAQ</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Guides</a><ul>
<li class="toctree-l2"><a class="reference internal" href="nfs.html">NFS Client How-To</a></li>
<li class="toctree-l2"><a class="reference internal" href="usbtrace.html">USB Device Trace</a></li>
<li class="toctree-l2"><a class="reference internal" href="simulator.html">Simulator</a></li>
<li class="toctree-l2"><a class="reference internal" href="qemugdb.html">How to debug NuttX using QEMU and GDB</a></li>
<li class="toctree-l2"><a class="reference internal" href="rndis.html">How to use RNDIS</a></li>
<li class="toctree-l2"><a class="reference internal" href="drivers.html">Drivers</a></li>
<li class="toctree-l2"><a class="reference internal" href="tasktrace.html">Task Trace</a></li>
<li class="toctree-l2"><a class="reference internal" href="cpp_cmake.html">C++ Example using CMake</a></li>
<li class="toctree-l2"><a class="reference internal" href="pysimcoder.html">pysimCoder integration with NuttX</a></li>
<li class="toctree-l2"><a class="reference internal" href="customboards.html">Custom Boards How-To</a></li>
<li class="toctree-l2"><a class="reference internal" href="customapps.html">Custom Apps How-to</a></li>
<li class="toctree-l2"><a class="reference internal" href="citests.html">Running CI Test Locally</a></li>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html">High Performance: Zero Latency Interrupts, Maskable nested interrupts</a></li>
<li class="toctree-l2"><a class="reference internal" href="kasan.html">The Kernel Address Sanitizer (KASAN)</a></li>
<li class="toctree-l2"><a class="reference internal" href="nestedinterrupts.html">Nested Interrupts</a></li>
<li class="toctree-l2"><a class="reference internal" href="cortexmhardfaults.html">Analyzing Cortex-M Hardfaults</a></li>
<li class="toctree-l2"><a class="reference internal" href="coredump.html">Core Dump</a></li>
<li class="toctree-l2"><a class="reference internal" href="coresight.html">Coresight - HW Assisted Tracing on ARM</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html">gdbserver</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbwithpython.html">GDB with Python</a></li>
<li class="toctree-l2"><a class="reference internal" href="ofloader.html">Open Flash Loader</a></li>
<li class="toctree-l2"><a class="reference internal" href="testingtcpip.html">Testing TCP/IP Network Stacks</a></li>
<li class="toctree-l2"><a class="reference internal" href="automounter.html">Auto-Mounter</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32nullpointer.html">STM32 Null Pointer Detection</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32ccm.html">STM32 CCM Allocator</a></li>
<li class="toctree-l2"><a class="reference internal" href="stackrecord.html">Run time stack statistics</a></li>
<li class="toctree-l2"><a class="reference internal" href="etcromfs.html">etc romfs</a></li>
<li class="toctree-l2"><a class="reference internal" href="thread_local_storage.html">Thread Local Storage</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../glossary.html">Glossary</a></li>
<li class="toctree-l1"><a class="reference internal" href="../logos/index.html">NuttX Logos</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">NuttX</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item active">Guides</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/guides/index.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="admonition-todo admonition" id="id1">
<p class="admonition-title">Todo</p>
<p>Create “tutorial” type documentation for specific subjects not to be covered in more general terms.</p>
</div>
<section id="guides">
<h1>Guides<a class="headerlink" href="#guides" title="Permalink to this heading"></a></h1>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="nfs.html">NFS Client How-To</a><ul>
<li class="toctree-l2"><a class="reference internal" href="nfs.html#adding-nfs-to-the-nuttx-configuration">Adding NFS to the NuttX Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="nfs.html#mount-interface">Mount Interface</a></li>
<li class="toctree-l2"><a class="reference internal" href="nfs.html#nfs-mount-command">NFS Mount Command</a></li>
<li class="toctree-l2"><a class="reference internal" href="nfs.html#configuring-the-nfs-server-ubuntu">Configuring the NFS server (Ubuntu)</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="usbtrace.html">USB Device Trace</a></li>
<li class="toctree-l1"><a class="reference internal" href="simulator.html">Simulator</a><ul>
<li class="toctree-l2"><a class="reference internal" href="simulator.html#prerequisites-for-macos">Prerequisites For macOS</a></li>
<li class="toctree-l2"><a class="reference internal" href="simulator.html#compiling">Compiling</a></li>
<li class="toctree-l2"><a class="reference internal" href="simulator.html#accessing-the-network">Accessing the Network</a></li>
<li class="toctree-l2"><a class="reference internal" href="simulator.html#testing-capturing-tcp-network-traffic">Testing / capturing TCP network traffic</a></li>
<li class="toctree-l2"><a class="reference internal" href="simulator.html#stopping">Stopping</a></li>
<li class="toctree-l2"><a class="reference internal" href="simulator.html#debugging">Debugging</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="qemugdb.html">How to debug NuttX using QEMU and GDB</a><ul>
<li class="toctree-l2"><a class="reference internal" href="qemugdb.html#compiling">Compiling</a></li>
<li class="toctree-l2"><a class="reference internal" href="qemugdb.html#start-qemu">Start QEMU</a></li>
<li class="toctree-l2"><a class="reference internal" href="qemugdb.html#start-gdb-to-connect-to-qemu">Start GDB to connect to QEMU</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="rndis.html">How to use RNDIS</a><ul>
<li class="toctree-l2"><a class="reference internal" href="rndis.html#compiling">Compiling</a></li>
<li class="toctree-l2"><a class="reference internal" href="rndis.html#flashing">Flashing</a></li>
<li class="toctree-l2"><a class="reference internal" href="rndis.html#setup-rndis-in-your-computer">Setup RNDIS in your computer</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="drivers.html">Drivers</a><ul>
<li class="toctree-l2"><a class="reference internal" href="drivers.html#porting-a-driver">Porting a Driver</a></li>
<li class="toctree-l2"><a class="reference internal" href="drivers.html#nuttx-drivers-as-a-reference">NuttX Drivers as a Reference</a></li>
<li class="toctree-l2"><a class="reference internal" href="drivers.html#using-chip-datasheets">Using Chip Datasheets</a></li>
<li class="toctree-l2"><a class="reference internal" href="drivers.html#logic-analyzers">Logic Analyzers</a></li>
<li class="toctree-l2"><a class="reference internal" href="drivers.html#dma-debugging">DMA Debugging</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="tasktrace.html">Task Trace</a><ul>
<li class="toctree-l2"><a class="reference internal" href="tasktraceuser.html">Task Trace User Guide</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tasktraceuser.html#installation">Installation</a><ul>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#install-trace-compass">Install Trace Compass</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#nuttx-kernel-configuration">NuttX kernel configuration</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="tasktraceuser.html#how-to-get-trace-data">How to get trace data</a><ul>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#quick-guide">Quick Guide</a><ul>
<li class="toctree-l5"><a class="reference internal" href="tasktraceuser.html#getting-the-trace">Getting the trace</a></li>
<li class="toctree-l5"><a class="reference internal" href="tasktraceuser.html#displaying-the-trace-result">Displaying the trace result</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="tasktraceuser.html#trace-command-description">Trace command description</a><ul>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-start">trace start</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-stop">trace stop</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-cmd">trace cmd</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-dump">trace dump</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-mode">trace mode</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-syscall">trace syscall</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceuser.html#trace-irq">trace irq</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tasktraceinternal.html">Task Trace Internals</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tasktraceinternal.html#overview">Overview</a><ul>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#nuttx-kernel-events-collection">NuttX kernel events collection</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#filter-logic-nuttx-sched-sched-note-c">Filter logic (<code class="docutils literal notranslate"><span class="pre">nuttx/sched/sched_note.c</span></code>)</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#noteram-device-driver-nuttx-drivers-note-noteram-driver-c">Noteram device driver (<code class="docutils literal notranslate"><span class="pre">nuttx/drivers/note/noteram_driver.c</span></code>)</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#notectl-device-driver-nuttx-drivers-note-notectl-driver-c">Notectl device driver (<code class="docutils literal notranslate"><span class="pre">nuttx/drivers/note/notectl_driver.c</span></code>)</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#trace-built-in-application-apps-system-trace-trace-c"><code class="docutils literal notranslate"><span class="pre">trace</span></code>” Built-In Application (<code class="docutils literal notranslate"><span class="pre">apps/system/trace/trace.c</span></code>)</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="tasktraceinternal.html#getting-the-system-call-events">Getting the system call events</a><ul>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#flat-build">FLAT build</a></li>
<li class="toctree-l4"><a class="reference internal" href="tasktraceinternal.html#protected-kernel-build">PROTECTED/KERNEL build</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="cpp_cmake.html">C++ Example using CMake</a><ul>
<li class="toctree-l2"><a class="reference internal" href="cpp_cmake.html#preparation">Preparation</a></li>
<li class="toctree-l2"><a class="reference internal" href="cpp_cmake.html#creating-the-project">Creating the project</a></li>
<li class="toctree-l2"><a class="reference internal" href="cpp_cmake.html#building">Building</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="pysimcoder.html">pysimCoder integration with NuttX</a><ul>
<li class="toctree-l2"><a class="reference internal" href="pysimcoder.html#peripheral-support">Peripheral Support</a></li>
<li class="toctree-l2"><a class="reference internal" href="pysimcoder.html#nuttx-configuration">NuttX Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="pysimcoder.html#using-pysimcoder-to-design-nuttx-application">Using pysimCoder to design NuttX application</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="customboards.html">Custom Boards How-To</a><ul>
<li class="toctree-l2"><a class="reference internal" href="customboards.html#add-a-custom-board">Add a Custom Board</a></li>
<li class="toctree-l2"><a class="reference internal" href="customboards.html#kconfig-settings">Kconfig Settings</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="customapps.html">Custom Apps How-to</a><ul>
<li class="toctree-l2"><a class="reference internal" href="customapps.html#replace-the-apps-directory-completely">1. Replace The Apps/ Directory Completely</a><ul>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#makefile">1.1 Makefile</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#kconfig">1.2 Kconfig</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#customhello-c">1.3 CustomHello.c</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#building-with-the-customapps-directory">1.4 Building with the CustomApps Directory</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="customapps.html#extend-the-apps-directory-to-include-a-new-custom-directory">2. Extend the apps/ directory to include a new custom directory</a><ul>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#custom-apps-directory">2.1 Custom Apps Directory</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#make-defs">2.2 Make.defs</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#id1">2.3 Makefile</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#customhello-app">2.4 CustomHello App</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#customhello-make-defs">2.5 CustomHello Make.defs</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#customhello-makefile">2.6 CustomHello Makefile</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#customhello-kconfig">2.7 CustomHello Kconfig</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#build-and-run">2.8 Build and Run</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="customapps.html#include-an-additional-custom-directory-outside-of-the-main-source-trees">3. Include an Additional Custom directory Outside of the Main Source Trees</a><ul>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#create-custom-apps-directory-and-a-symbolic-link">3.1 Create Custom Apps directory and a Symbolic Link</a></li>
<li class="toctree-l3"><a class="reference internal" href="customapps.html#make-defs-etc">3.2 Make.defs etc.</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="citests.html">Running CI Test Locally</a><ul>
<li class="toctree-l2"><a class="reference internal" href="citests.html#configuring-nuttx">Configuring NuttX</a></li>
<li class="toctree-l2"><a class="reference internal" href="citests.html#running-ci-tests">Running CI Tests</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="zerolatencyinterrupts.html">High Performance: Zero Latency Interrupts, Maskable nested interrupts</a><ul>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html#generic-interrupt-handling">Generic Interrupt Handling</a></li>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html#bypassing-the-generic-interrupt-handling">Bypassing the Generic Interrupt Handling</a></li>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html#getting-back-into-the-game">Getting Back into the Game</a></li>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html#maskable-nested-interrupts">Maskable Nested Interrupts</a></li>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html#nested-interrupt-handling">Nested Interrupt Handling</a></li>
<li class="toctree-l2"><a class="reference internal" href="zerolatencyinterrupts.html#cortex-m3-4-implementation">Cortex-M3/4 Implementation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="zerolatencyinterrupts.html#configuration-options">Configuration Options</a></li>
<li class="toctree-l3"><a class="reference internal" href="zerolatencyinterrupts.html#disabling-the-high-priority-interrupt">Disabling the High Priority Interrupt</a></li>
<li class="toctree-l3"><a class="reference internal" href="zerolatencyinterrupts.html#dependencies">Dependencies</a></li>
<li class="toctree-l3"><a class="reference internal" href="zerolatencyinterrupts.html#configuring-high-priority-interrupts">Configuring High Priority Interrupts</a></li>
<li class="toctree-l3"><a class="reference internal" href="zerolatencyinterrupts.html#example-code">Example Code</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="kasan.html">The Kernel Address Sanitizer (KASAN)</a><ul>
<li class="toctree-l2"><a class="reference internal" href="kasan.html#overview">Overview</a></li>
<li class="toctree-l2"><a class="reference internal" href="kasan.html#support">Support</a><ul>
<li class="toctree-l3"><a class="reference internal" href="kasan.html#architectures">Architectures</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="kasan.html#usage">Usage</a></li>
<li class="toctree-l2"><a class="reference internal" href="kasan.html#implementation-details">Implementation details</a></li>
<li class="toctree-l2"><a class="reference internal" href="kasan.html#for-developers">For developers</a><ul>
<li class="toctree-l3"><a class="reference internal" href="kasan.html#ignoring-accesses">Ignoring accesses</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="nestedinterrupts.html">Nested Interrupts</a><ul>
<li class="toctree-l2"><a class="reference internal" href="nestedinterrupts.html#are-nested-interrupts-needed">Are Nested Interrupts Needed?</a></li>
<li class="toctree-l2"><a class="reference internal" href="nestedinterrupts.html#layered-interrupt-handling-architecture">Layered Interrupt Handling Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="nestedinterrupts.html#how-to-implement-nested-interrupts-in-the-layered-interrupt-handling-architecture">How to Implement Nested Interrupts in the Layered Interrupt Handling Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="nestedinterrupts.html#svcall-vs-pendsv">SVCall vs PendSV</a></li>
<li class="toctree-l2"><a class="reference internal" href="nestedinterrupts.html#what-could-go-wrong">What Could Go Wrong?</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="cortexmhardfaults.html">Analyzing Cortex-M Hardfaults</a><ul>
<li class="toctree-l2"><a class="reference internal" href="cortexmhardfaults.html#analyzing-the-register-dump">Analyzing the Register Dump</a></li>
<li class="toctree-l2"><a class="reference internal" href="cortexmhardfaults.html#analyzing-the-stack-dump">Analyzing the Stack Dump</a><ul>
<li class="toctree-l3"><a class="reference internal" href="cortexmhardfaults.html#the-task-stack">The Task Stack</a></li>
<li class="toctree-l3"><a class="reference internal" href="cortexmhardfaults.html#the-interrupt-stack">The Interrupt Stack</a></li>
<li class="toctree-l3"><a class="reference internal" href="cortexmhardfaults.html#full-stack-analysis">Full Stack Analysis</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="cortexmhardfaults.html#recovering-state-at-the-time-of-the-hardfault">Recovering State at the Time of the Hardfault</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="coredump.html">Core Dump</a><ul>
<li class="toctree-l2"><a class="reference internal" href="coredump.html#overview">Overview</a><ul>
<li class="toctree-l3"><a class="reference internal" href="coredump.html#how-to-use">How to use</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="coresight.html">Coresight - HW Assisted Tracing on ARM</a><ul>
<li class="toctree-l2"><a class="reference internal" href="coresight.html#overview">Overview</a></li>
<li class="toctree-l2"><a class="reference internal" href="coresight.html#acronyms-and-classification">Acronyms and Classification</a></li>
<li class="toctree-l2"><a class="reference internal" href="coresight.html#framework-and-implementation">Framework and implementation</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="gdbserver.html">gdbserver</a><ul>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#usage">Usage</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#log-example">Log Example</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#raw-file-example">Raw file Example</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#coredump-example">Coredump Example</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#thread-awarenes">Thread awarenes</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbserver.html#how-to-add-new-architecture">How to add new architecture</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="gdbwithpython.html">GDB with Python</a><ul>
<li class="toctree-l2"><a class="reference internal" href="gdbwithpython.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbwithpython.html#usage">Usage</a></li>
<li class="toctree-l2"><a class="reference internal" href="gdbwithpython.html#how-to-write-a-gdb-python-script">How to write a GDB python script</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="ofloader.html">Open Flash Loader</a><ul>
<li class="toctree-l2"><a class="reference internal" href="ofloader.html#introduce">Introduce</a></li>
<li class="toctree-l2"><a class="reference internal" href="ofloader.html#configuration">CONFIGURATION</a></li>
<li class="toctree-l2"><a class="reference internal" href="ofloader.html#usage">Usage</a></li>
<li class="toctree-l2"><a class="reference internal" href="ofloader.html#precautions">Precautions</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="testingtcpip.html">Testing TCP/IP Network Stacks</a><ul>
<li class="toctree-l2"><a class="reference internal" href="testingtcpip.html#syn-flood-attack">SYN Flood Attack</a></li>
<li class="toctree-l2"><a class="reference internal" href="testingtcpip.html#building-packets-with-scapy">Building Packets with Scapy</a></li>
<li class="toctree-l2"><a class="reference internal" href="testingtcpip.html#simulating-packet-loss">Simulating Packet Loss</a></li>
<li class="toctree-l2"><a class="reference internal" href="testingtcpip.html#fuzz-testing">Fuzz-Testing</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="automounter.html">Auto-Mounter</a><ul>
<li class="toctree-l2"><a class="reference internal" href="automounter.html#general-description">General Description</a></li>
<li class="toctree-l2"><a class="reference internal" href="automounter.html#board-specific-support">Board-Specific Support</a></li>
<li class="toctree-l2"><a class="reference internal" href="automounter.html#example-implementation">Example Implementation</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="stm32nullpointer.html">STM32 Null Pointer Detection</a><ul>
<li class="toctree-l2"><a class="reference internal" href="stm32nullpointer.html#the-null-pointer-problem">The NULL Pointer Problem</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32nullpointer.html#cortex-m-memory">Cortex-M Memory</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32nullpointer.html#stm32-memory-aliasing">STM32 Memory Aliasing</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32nullpointer.html#the-cortex-m-memory-protection-unit">The Cortex-M Memory Protection Unit</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32nullpointer.html#using-the-mpu-to-detect-null-pointer-usage">Using the MPU to Detect Null Pointer Usage</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="stm32ccm.html">STM32 CCM Allocator</a><ul>
<li class="toctree-l2"><a class="reference internal" href="stm32ccm.html#ccm-memory">CCM Memory</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32ccm.html#config-stm32-ccmexclude">CONFIG_STM32_CCMEXCLUDE</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32ccm.html#ccm-allocator">CCM Allocator</a></li>
<li class="toctree-l2"><a class="reference internal" href="stm32ccm.html#ccm-stacks">CCM Stacks</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="stackrecord.html">Run time stack statistics</a><ul>
<li class="toctree-l2"><a class="reference internal" href="stackrecord.html#introduce">Introduce</a></li>
<li class="toctree-l2"><a class="reference internal" href="stackrecord.html#configuration">Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="stackrecord.html#example">Example</a></li>
<li class="toctree-l2"><a class="reference internal" href="stackrecord.html#implementation-details">Implementation details</a></li>
<li class="toctree-l2"><a class="reference internal" href="stackrecord.html#notice">Notice</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="etcromfs.html">etc romfs</a><ul>
<li class="toctree-l2"><a class="reference internal" href="etcromfs.html#configuration">Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="etcromfs.html#start-up-scripts">Start up Scripts</a></li>
<li class="toctree-l2"><a class="reference internal" href="etcromfs.html#customizing-start-up-scripts">Customizing Start up Scripts</a></li>
<li class="toctree-l2"><a class="reference internal" href="etcromfs.html#customizing-romfs-image">Customizing ROMFS Image</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="thread_local_storage.html">Thread Local Storage</a><ul>
<li class="toctree-l2"><a class="reference internal" href="thread_local_storage.html#configuration">Configuration</a></li>
</ul>
</li>
</ul>
</div>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="../faq/index.html" class="btn btn-neutral float-left" title="FAQ" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="nfs.html" class="btn btn-neutral float-right" title="NFS Client How-To" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2023, The Apache Software Foundation.</p>
</div>
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>