You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ad...@apache.org on 2016/03/10 03:21:11 UTC
[07/11] incubator-mynewt-site git commit: Made layout and look
consistent across all pages
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/porting/port_cpu.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/porting/port_cpu.md b/docs/os/core_os/porting/port_cpu.md
index d5e2c3f..fae2e82 100644
--- a/docs/os/core_os/porting/port_cpu.md
+++ b/docs/os/core_os/porting/port_cpu.md
@@ -1,4 +1,4 @@
-# Porting Mynewt to a new CPU Architecture
+#Porting Mynewt to a new CPU Architecture
A new CPU architecture typically requires the following:
@@ -8,7 +8,7 @@ A new CPU architecture typically requires the following:
These are discussed below:
-## Create A New Compiler
+###Create A New Compiler
NOTE: Newt does not automatically install the compilers require to build all platforms. Its up to the user using their local machines package manager to install the compilers. The step described here just registers the compiler with newt.
@@ -23,7 +23,7 @@ Edit the `pkg.yml` file and change the configuration attributes to match your co
| compiler.flags.optimized | additional flags when the newt tool builds an optimized image |
| compiler.flags.debug | additional flags when the newt tool builds a debug image|
-##Implement architecture-specific OS code
+###Implement architecture-specific OS code
There are several architecture-specific code functions that are required when implementing a new architecture. You can find examples in the `sim` architecture within Mynewt.
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/porting/port_os.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/porting/port_os.md b/docs/os/core_os/porting/port_os.md
index 9945495..1a3b779 100644
--- a/docs/os/core_os/porting/port_os.md
+++ b/docs/os/core_os/porting/port_os.md
@@ -2,7 +2,7 @@
This chapter describes how to adapt the Mynewt OS to different platforms.
-## Description
+###Description
The Mynewt OS is a complete multi-tasking environment with scheduler, time
control, buffer management, and synchronization objects. it also includes
@@ -22,7 +22,7 @@ SoC within your target platform
* **BSP Dependencies** -- Specific code or configuration to accommodate the
specific layout and functionality of your target platform
-## BSP Dependency
+###BSP Dependency
With all of the functionality provided by the core, MCU, and MCU HAL (Hardware Abstraction Layer), there are still some things that must be specified for your particular system. This
is provided in Mynewt to allow you the flexibility to design for the exact
@@ -54,7 +54,7 @@ the UART pins should appear to match the hardware layout of your system.
* If your BSP is already supported my Mynewt, there is no additional BSP work involved in porting to your platform. You need only to set the `bsp` attribute in your Mynewt target using the [newt command tool](../../../../newt/newt_intro).
* If your BSP is not yet supported by Mynewt, you can add support following the instructions on [how to add BSP support to Mynewt](port_bsp.md)
-##MCU Dependency
+###MCU Dependency
Some OS code depends on the MCU or SoC that the system contains. For example, the MCU may specify the potential memory map of the system - where code and data can reside.
@@ -67,7 +67,7 @@ Some OS code depends on the MCU or SoC that the system contains. For example, th
Mynewt's architecture supports a hardware abstraction layer (HAL) for common on or off-chip MCU peripherals such as GPIO, UARTs, flash memory etc. Even if your MCU is supported for the core OS, you may find that you need to implement the HAL functionality for a new peripheral. For a description of the HAL abstraction and implementation information,
see the [HAL API](../../modules/hal/hal.md)
-##CPU Core Dependency
+###CPU Core Dependency
Some OS code depends on the CPU core that your system is using. For example, a given CPU core has a specific assembly language instruction set, and may require special cross compiler or compiler settings to use the appropriate instruction set.
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/sanity/os_sanity_check_init.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/sanity/os_sanity_check_init.md b/docs/os/core_os/sanity/os_sanity_check_init.md
index 2073647..c7c8628 100644
--- a/docs/os/core_os/sanity/os_sanity_check_init.md
+++ b/docs/os/core_os/sanity/os_sanity_check_init.md
@@ -31,4 +31,3 @@ All other error codes indicate an error.
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/sanity/os_sanity_check_register.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/sanity/os_sanity_check_register.md b/docs/os/core_os/sanity/os_sanity_check_register.md
index 8674766..da83bf6 100644
--- a/docs/os/core_os/sanity/os_sanity_check_register.md
+++ b/docs/os/core_os/sanity/os_sanity_check_register.md
@@ -31,4 +31,3 @@ All other error codes indicate an error.
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/sanity/os_sanity_check_reset.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/sanity/os_sanity_check_reset.md b/docs/os/core_os/sanity/os_sanity_check_reset.md
index f945a66..caeda58 100644
--- a/docs/os/core_os/sanity/os_sanity_check_reset.md
+++ b/docs/os/core_os/sanity/os_sanity_check_reset.md
@@ -32,4 +32,3 @@ All other error codes indicate an error.
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/sanity/os_sanity_task_checkin.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/sanity/os_sanity_task_checkin.md b/docs/os/core_os/sanity/os_sanity_task_checkin.md
index 2d797d7..ba4a4cf 100644
--- a/docs/os/core_os/sanity/os_sanity_task_checkin.md
+++ b/docs/os/core_os/sanity/os_sanity_task_checkin.md
@@ -31,4 +31,3 @@ All other error codes indicate an error.
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/sanity/os_sanity_task_init.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/sanity/os_sanity_task_init.md b/docs/os/core_os/sanity/os_sanity_task_init.md
index dce0e1a..0e4693c 100644
--- a/docs/os/core_os/sanity/os_sanity_task_init.md
+++ b/docs/os/core_os/sanity/os_sanity_task_init.md
@@ -33,4 +33,3 @@ All other error codes indicate an error.
assert(rc == OS_OK);
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/semaphore/os_sem_init.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/semaphore/os_sem_init.md b/docs/os/core_os/semaphore/os_sem_init.md
index b586120..d44804e 100644
--- a/docs/os/core_os/semaphore/os_sem_init.md
+++ b/docs/os/core_os/semaphore/os_sem_init.md
@@ -38,4 +38,4 @@ err = os_sem_init(&g_os_sem, 1);
assert(err == OS_OK);
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/semaphore/os_sem_pend.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/semaphore/os_sem_pend.md b/docs/os/core_os/semaphore/os_sem_pend.md
index df64bcd..482f23e 100644
--- a/docs/os/core_os/semaphore/os_sem_pend.md
+++ b/docs/os/core_os/semaphore/os_sem_pend.md
@@ -43,4 +43,3 @@ assert(err == OS_OK);
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/semaphore/os_sem_release.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/semaphore/os_sem_release.md b/docs/os/core_os/semaphore/os_sem_release.md
index c80e9b7..030977c 100644
--- a/docs/os/core_os/semaphore/os_sem_release.md
+++ b/docs/os/core_os/semaphore/os_sem_release.md
@@ -38,5 +38,3 @@ assert(err == OS_OK);
err = os_sem_release(&g_os_sem);
assert(err == OS_OK);
```
-
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/semaphore/semaphore.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/semaphore/semaphore.md b/docs/os/core_os/semaphore/semaphore.md
index cbf7abc..9b643c3 100644
--- a/docs/os/core_os/semaphore/semaphore.md
+++ b/docs/os/core_os/semaphore/semaphore.md
@@ -3,7 +3,7 @@
A semaphore is a structure used for gaining exclusive access (much like a mutex), synchronizing task operations and/or use in a "producer/consumer" roles. Semaphores like the ones used by the myNewt OS are called "counting" semaphores as they are allowed to have more than one token (explained below).
-## Description
+### Description
A semaphore is a fairly simple construct consisting of a queue for waiting tasks and the number of tokens currently owned by the semaphore. A semaphore can be obtained as long as there are tokens in the semaphore. Any task can add tokens to the semaphore and any task can request the semaphore, thereby removing tokens. When creating the semaphore, the initial number of tokens can be set as well.
@@ -13,7 +13,7 @@ Semaphores can also be used for task synchronization. A simple example of this w
The other common use of a counting semaphore is in what is commonly called a "producer/consumer" relationship. The producer adds tokens (by calling *os_sem_release*) and the consumer consumes them by calling *os_sem_pend*. In this relationship, the producer has work for the consumer to do. Each token added to the semaphore will cause the consumer to do whatever work is required. A simple example could be the following: every time a button is pressed there is some work to do (ring a bell). Each button press causes the producer to add a token. Each token consumed rings the bell. There will exactly the same number of bell rings as there are button presses. In other words, each call to *os_sem_pend* subtracts exactly one token and each call to *os_sem_release* adds exactly one token.
-## Data structures
+### Data structures
```no-highlight
struct os_sem
@@ -30,7 +30,7 @@ struct os_sem
| _pad | Padding for alignment |
| sem_tokens | Current number of tokens |
-## List of Functions
+### List of Functions
The functions available in semaphore are:
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/task/os_task_count.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/task/os_task_count.md b/docs/os/core_os/task/os_task_count.md
index b3935dc..1fe0eb1 100644
--- a/docs/os/core_os/task/os_task_count.md
+++ b/docs/os/core_os/task/os_task_count.md
@@ -25,4 +25,4 @@ unsigned 8-bit integer representing number of tasks created
num_tasks = os_task_count();
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/task/os_task_info_get_next.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/task/os_task_info_get_next.md b/docs/os/core_os/task/os_task_info_get_next.md
index a239829..a5d907c 100644
--- a/docs/os/core_os/task/os_task_info_get_next.md
+++ b/docs/os/core_os/task/os_task_info_get_next.md
@@ -58,4 +58,4 @@ get_task_info(void)
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/task/os_task_init.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/task/os_task_init.md b/docs/os/core_os/task/os_task_init.md
index 022f050..9ca5b6b 100644
--- a/docs/os/core_os/task/os_task_init.md
+++ b/docs/os/core_os/task/os_task_init.md
@@ -45,4 +45,4 @@ All other error codes indicate an internal error.
assert(rc == OS_OK);
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/time/os_gettimeofday.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/time/os_gettimeofday.md b/docs/os/core_os/time/os_gettimeofday.md
index 501129f..89bcfd0 100644
--- a/docs/os/core_os/time/os_gettimeofday.md
+++ b/docs/os/core_os/time/os_gettimeofday.md
@@ -40,4 +40,4 @@ The function is a no-op if both `utctime` and `timezone` are NULL.
}
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/time/os_settimeofday.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/time/os_settimeofday.md b/docs/os/core_os/time/os_settimeofday.md
index c7d691f..4509f0a 100644
--- a/docs/os/core_os/time/os_settimeofday.md
+++ b/docs/os/core_os/time/os_settimeofday.md
@@ -34,4 +34,4 @@ The function is a no-op if both `utctime` and `timezone` are NULL.
/* success */
}
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/time/os_time_delay.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/time/os_time_delay.md b/docs/os/core_os/time/os_time_delay.md
index 35deb7d..a02a0fb 100644
--- a/docs/os/core_os/time/os_time_delay.md
+++ b/docs/os/core_os/time/os_time_delay.md
@@ -27,4 +27,4 @@ Passing `OS_TIMEOUT_NEVER` to this function will not block indefinitely but will
int32_t delay = OS_TICKS_PER_SEC * 3;
os_time_delay(delay);
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/time/os_time_get.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/time/os_time_get.md b/docs/os/core_os/time/os_time_get.md
index d496325..99b320a 100644
--- a/docs/os/core_os/time/os_time_get.md
+++ b/docs/os/core_os/time/os_time_get.md
@@ -25,4 +25,3 @@ See the [Special Notes](os_time) on OS time epoch and comparison
os_time_t now = os_time_get();
```
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/core_os/time/os_time_tick.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/time/os_time_tick.md b/docs/os/core_os/time/os_time_tick.md
index 011f3d1..6117606 100644
--- a/docs/os/core_os/time/os_time_tick.md
+++ b/docs/os/core_os/time/os_time_tick.md
@@ -26,4 +26,4 @@ Called for every single tick by the architecture specific functions.
os_time_tick();
```
----------------------
+
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/baselibc.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/baselibc.md b/docs/os/modules/baselibc.md
index dcd8666..fe650ac 100644
--- a/docs/os/modules/baselibc.md
+++ b/docs/os/modules/baselibc.md
@@ -6,11 +6,11 @@ The code is based on klibc and tinyprintf modules, and licensed under the BSD li
Baselibc comes from https://github.com/PetteriAimonen/Baselibc.git
-## Description
+###Description
Mynewt OS can utilize libc which comes with compiler (e.g. newlib bundled with some binary distributions of arm-none-eabi-gcc). However, you may choose to replace the libc with baselibc for a reduced image size. Baselibc optimizes for size rather than performance, which is usually a more important goal in embedded environments.
-## How to switch to baselibc
+###How to switch to baselibc
In order to switch from using libc to using baselibc you have to add the baselibc pkg as a dependency in the project pkg. Specifying this dependency ensures that the linker first looks for the functions in baselibc before falling back to libc while creating the executable. For example, project `boot` uses baselibc. Its project description file `boot.yml` looks like the following:
@@ -26,12 +26,10 @@ In order to switch from using libc to using baselibc you have to add the baselib
- libs/baselibc
```
-## List of Functions
+###List of Functions
Documentation for libc functions is available from multiple places. One example are the on-line manual pages at [https://www.freebsd.org/cgi/man.cgi](#https://www.freebsd.org/cgi/man.cgi).
baselibc supports most libc functionality; malloc(), printf-family, string handling, and conversion routines.
There is some functionality which is not available, e.g. support for floating point numbers, and limited support for 'long long'.
-
----------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/bootloader/bootloader.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/bootloader/bootloader.md b/docs/os/modules/bootloader/bootloader.md
index fd4bc8e..55b6d44 100644
--- a/docs/os/modules/bootloader/bootloader.md
+++ b/docs/os/modules/bootloader/bootloader.md
@@ -1,17 +1,17 @@
-# Bootloader
+#Bootloader
Insert synopsis here
-## Description
+###Description
Describe module here, special features, how pieces fit together etc.
-## Data structures
+###Data structures
Replace this with the list of data structures used, why, any neat features
-## List of Functions
+###List of Functions
<Comments such as these instructions are placed within angle brackets. List all the functions here. Note how the anchors work. You put the text you want to show up as a link within [] and the relevant #heading within (). Note that the header has to have at least 2 words for the anchor to work - that's how it is. "no-highlight" disables syntax highlighting. You can enable it for a particular language by specifying what the language is instead of "no-highlight". Be warned that this highlighting or no-highlighting specification may not show up nicely on Mou.>
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/console/console.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/console/console.md b/docs/os/modules/console/console.md
index a38afb3..d890fb8 100644
--- a/docs/os/modules/console/console.md
+++ b/docs/os/modules/console/console.md
@@ -1,4 +1,4 @@
-# Console
+#Console
The console is an operating system window where users interact with system programs of the operating system or a console application by entering text input (typically from a keyboard) and reading text output (typically on the computer terminal or monitor). The text written on the console brings some information and is a sequence of characters sent by the OS or programs running on the OS.
@@ -6,7 +6,7 @@ The console is an operating system window where users interact with system progr
Support is currently available for console access via the serial port on the hardware board.
-## Description
+###Description
In the Mynewt OS, the console library comes in two versions:
@@ -47,11 +47,11 @@ Console has 2 modes for transmit; *blocking mode* and *non-blocking mode*. Usual
Console, by default, echoes everything it receives back. Terminal programs expect this, and is a way for the user to know that the console is connected and responsive. Whether echoing happens or not can be controlled programmatically.
-## Data structures
+###Data structures
N/A
-## List of Functions
+###List of Functions
The functions available in console are:
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/elua/elua.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/elua/elua.md b/docs/os/modules/elua/elua.md
index d85cd2d..1cd3693 100644
--- a/docs/os/modules/elua/elua.md
+++ b/docs/os/modules/elua/elua.md
@@ -1,19 +1,19 @@
# elua
-## Description
+###Description
This package contains a Lua interpreter. See http://lua.org for documentation of the language.
You can execute lua scripts either from console with shell or start the execution programmatically.
-## Data structures
+###Data structures
-## Notes
+###Notes
Currently we don't have language extension modules which would go together with this one, but those should be added.
-## List of Functions
+###List of Functions
* [lua_init](lua_init.md)
* [lua_main](lua_main.md)
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/fs/fs/fs.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/fs/fs/fs.md b/docs/os/modules/fs/fs/fs.md
index f4a39bd..78655b0 100644
--- a/docs/os/modules/fs/fs/fs.md
+++ b/docs/os/modules/fs/fs/fs.md
@@ -1,8 +1,8 @@
-# File System Abstraction
+#File System Abstraction
Mynewt provides a file system abstraction layer (`fs/fs`) to allow client code to be file system agnostic. By accessing the file system via the `fs/fs` API, client code can perform file system operations without being tied to a particular implementation. When possible, library code should use the `fs/fs` API rather than accessing the underlying file system directly.
-## Description
+###Description
Applications should aim to minimize the amount of code which depends on a particular file system implementation. When possible, only depend on the `fs/fs` package. In the simplest case, the only code which needs to know which file system is in use is the code which initializes the file system. In terms of the Mynewt hierarchy, the **project** package must depend on a specific file system package, while **library** packages should only depend on `fs/fs`.
@@ -59,17 +59,17 @@ pkg.deps:
The `libs/imgmgr` package uses the `fs/fs` API for all file system operations.
-## Thread Safety
+###Thread Safety
All `fs/fs` functions are thread safe.
-## Header Files
+###Header Files
All code which uses the `fs/fs` package needs to include the following header:
```no-highlight
#include "fs/fs.h"
```
-## Data Structures
+###Data Structures
All `fs/fs` data structures are opaque to client code.
```no-highlight
@@ -78,7 +78,7 @@ struct fs_dir;
struct fs_dirent;
```
-## API
+###API
Functions in `fs/fs` that indicate success or failure do so with the following set of return codes:
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/fs/nffs/nffs.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/fs/nffs/nffs.md b/docs/os/modules/fs/nffs/nffs.md
index 7832264..98d91d2 100644
--- a/docs/os/modules/fs/nffs/nffs.md
+++ b/docs/os/modules/fs/nffs/nffs.md
@@ -7,9 +7,9 @@ Mynewt includes the Newtron Flash File System (nffs). This file system is desig
Mynewt also provides an abstraction layer API (fs) to allow you to swap out nffs with a different file system of your choice.
-## Description
+###Description
-### Areas
+####Areas
At the top level, an nffs disk is partitioned into *areas*. An area is a region of disk with the following properties:
@@ -22,7 +22,7 @@ At the top level, an nffs disk is partitioned into *areas*. An area is a region
Thus, each area must comprise a discrete number of blocks.
-### Initialization
+####Initialization
Before nffs can be used, it must be initialized. There are two means of initializing an nffs file system:
@@ -86,7 +86,7 @@ main(int argc, char **argv)
After nffs has been initialized, the application can access the file system via the [file system abstraction layer](../fs/fs.md).
-## Configuration
+###Configuration
The nffs file system is configured by populating fields in a global [struct nffs\_config](nffs_config.md) instance. Each field in the structure corresponds to a setting. All configuration must be done prior to calling nffs\_init().
@@ -97,14 +97,14 @@ The global `struct nffs_config` instance is exposed in `nffs/nffs.h` as follows:
extern struct nffs_config nffs_config;
```
-## Data Structures
+###Data Structures
The `fs/nffs` package exposes the following data structures:
* [struct nffs\_area\_desc](nffs_area_desc.md)
* [struct nffs\_config](nffs_config.md)
-## API
+###API
The functions available in this OS feature are:
@@ -112,7 +112,7 @@ The functions available in this OS feature are:
* [nffs\_format](nffs_format.md)
* [nffs\_init](nffs_init.md)
-# Miscellaneous measures
+###Miscellaneous measures
* RAM usage:
* 24 bytes per inode
@@ -123,13 +123,13 @@ The functions available in this OS feature are:
* Maximum filename size: 256 characters (no null terminator required)
* Disallowed filename characters: '/' and '\0'
-## Internals
+###Internals
nffs implementation details can be found here:
* [nffs\_internals](nffs_internals.md)
-## Future enhancements
+###Future enhancements
* Error correction.
* Encryption.
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/fs/otherfs.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/fs/otherfs.md b/docs/os/modules/fs/otherfs.md
index fe82b3a..add68ee 100644
--- a/docs/os/modules/fs/otherfs.md
+++ b/docs/os/modules/fs/otherfs.md
@@ -55,7 +55,7 @@ nffs_init(void)
}
```
-## Header Files
+### Header Files
To gain access to `fs/fs`'s registration interface, include the following header:
```no-highlight
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/hal/hal.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/hal/hal.md b/docs/os/modules/hal/hal.md
index 4f23682..93eac6c 100644
--- a/docs/os/modules/hal/hal.md
+++ b/docs/os/modules/hal/hal.md
@@ -1,6 +1,6 @@
# Hardware Abstraction Layer
-## Description
+###Description
The Hardware Abstraction Layer (HAL) includes a set of APIs
(Application Programmer Interface) to connect to
@@ -14,7 +14,7 @@ to commonly used MCU components and peripherals to make development easier.
Nothing in the HAL precludes the user of the underlying physical devices,
it only limits the portability of the end application.
-## Example
+###Example
A Mynewt contributor might write a light-switch
module (`libs/light`) that provides the functionality of an intelligent light
@@ -29,7 +29,7 @@ The Mynewt team ensures that the underlying HAL devices all work equivalently
through the HAL APIs. The contributors library is independent of the specifics
of the hardware.
-## Dependency
+###Dependency
To include the HAL within your project, simply add it to your package
dependencies as follows:
@@ -40,7 +40,7 @@ pkg.deps:
hw/hal
```
-## Platform Support
+###Platform Support
Not all platforms (MCU and BSP) support all HAL devices. Consult your MCU
or BSP documentation to find out if you have hardware support for the
@@ -50,7 +50,7 @@ using is in the `mcu/xxx/src/hal_xxxx.c` implementation. Finally, you
can build your project and ensure that there are no unresolved hal_xxx
externals.
-## Implementing HAL Interfaces
+###Implementing HAL Interfaces
It might be that a specific HAL interface is not supported on your MCU or
platform. See the specific HAL documentation for that interface for tips
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/hal/hal_cputime/hal_cpu_timer.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/hal/hal_cputime/hal_cpu_timer.md b/docs/os/modules/hal/hal_cputime/hal_cpu_timer.md
index 77f2b1a..99fa830 100644
--- a/docs/os/modules/hal/hal_cputime/hal_cpu_timer.md
+++ b/docs/os/modules/hal/hal_cputime/hal_cpu_timer.md
@@ -3,7 +3,7 @@
The hardware independent interface to system time.
-## Description
+###Description
Contains several different interface.
@@ -11,11 +11,11 @@ Contains several different interface.
* Interfaces to convert between CPU time and clock time (microseconds etc.)
* An Interface to set up a software timer based on CPU time.
-## Definition
+###Definition
[hal_cputime.h](https://github.com/apache/incubator-mynewt-larva/blob/master/hw/hal/include/hal/hal_cputime.h)
-## CPU Time
+###CPU Time
The CPU time is not the same as the [os_time](TBD). Typically,
the os_time is set to a much slower tick rate than the CPU time. The CPU
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/hal/hal_gpio/hal_gpio.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/hal/hal_gpio/hal_gpio.md b/docs/os/modules/hal/hal_gpio/hal_gpio.md
index 953fa47..5518bc8 100644
--- a/docs/os/modules/hal/hal_gpio/hal_gpio.md
+++ b/docs/os/modules/hal/hal_gpio/hal_gpio.md
@@ -1,27 +1,20 @@
# hal_gpio
-The hardware independent GPIO Interface for Mynewt
+This is the hardware independent GPIO (General Purpose Input Output) Interface for Mynewt.
-## Description
+### Description
-Contains the basic operations set and read General Purpose Digital I/O Pins
+Contains the basic operations to set and read General Purpose Digital I/O Pins
within a Mynewt system.
-Individual GPIOs are referenced in the APIs as `pins`. However, in this interface
-the `pins` are virtual GPIO pins. The MCU hal driver maps these virtual `pins`
-to the physical GPIO ports and pins.
+Individual GPIOs are referenced in the APIs as `pins`. However, in this interface the `pins` are virtual GPIO pins. The MCU hal driver maps these virtual `pins` to the physical GPIO ports and pins.
-Typically, the BSP code may define named IO pins in terms of these virtual
-`pins` to describe the devices attached to the physical pins.
+Typically, the BSP code may define named I/O pins in terms of these virtual `pins` to describe the devices attached to the physical pins.
Here's a brief example so you can get the gist of the translation.
-Suppose my product uses the stm32F4xx processor. There already exists
-support for this processor within Mynewt. The processor has N ports (A,B,C..)
-of 16 GPIO pins per port. The MCU hal_gpio driver maps these to a set of
-virtual pins 0-N where port A maps to 0-15, Port B maps to 16-31, Port C
-maps to 32-47 and so on. The exact number of physical port (and virtual
+Suppose my product uses the stm32F4xx processor. There already exists support for this processor within Mynewt. The processor has N ports (A,B,C..) of 16 GPIO pins per port. The MCU hal_gpio driver maps these to a set of virtual pins 0-N where port A maps to 0-15, Port B maps to 16-31, Port C maps to 32-47 and so on. The exact number of physical port (and virtual
port pins) depends on the specific variant of the stm32F4xx.
So if I want to turn on port B pin 3, that would be virtual pin 1*16 + 3 = 19.
@@ -30,18 +23,14 @@ This translation is defined in the MCU implementation of
for the stmf32F4xx. Each MCU will typically have a different translation method
depending on its GPIO architecture.
-Now, when writing a BSP, its common to give names to the relevant port
-pins that you are using. Thus, the BSP may define a mapping between a
-function and a virual port pin. For example
+Now, when writing a BSP, it's common to give names to the relevant port pins that you are using. Thus, the BSP may define a mapping between a function and a virtual port pin. For example
```no-highlight
#define SYSTEM_LED (37)
#define FLASH_SPI_CHIP_SELECT (3)
```
-would map the system indicator LED to virtual pin 37 which on the stm32F4xx
-would be Port C pin 5 and the chip select line for the external SPI flash
-to virtual pin 3 which on the stm32F4xxis port A pin 3.
+would map the system indicator LED to virtual pin 37 which on the stm32F4xx would be Port C pin 5 and the chip select line for the external SPI flash to virtual pin 3 which on the stm32F4xxis port A pin 3.
Said another way, in this specific system we get
@@ -49,17 +38,19 @@ Said another way, in this specific system we get
SYSTEM_LED --> hal_gpio virtual pin 37 --> port C pin 5 on the stm34F4xx
```
-## Definition
+### Definition
[hal_gpio.h](https://github.com/apache/incubator-mynewt-larva/blob/master/hw/hal/include/hal/hal_gpio.h)
-## Examples
+### Examples
-### Blinky
+#### Blinky
-Blinky uses the hal_gpio to blink the system led. The blinky source
-code is available
+Blinky uses the hal_gpio to blink the system LED. The blinky source code is available
[here](https://github.com/apache/incubator-mynewt-larva/blob/master/project/blinky/src/main.c).
Examine how `task1_handler` initializes and toggles the GPIO to control the LED.
+<br>
+
+---------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/hal/hal_uart/hal_uart.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/hal/hal_uart/hal_uart.md b/docs/os/modules/hal/hal_uart/hal_uart.md
index 15d3d4c..b34f752 100644
--- a/docs/os/modules/hal/hal_uart/hal_uart.md
+++ b/docs/os/modules/hal/hal_uart/hal_uart.md
@@ -3,16 +3,16 @@
The hardware independent UART interface for Mynewt.
-## Description
+###Description
Contains the basic operations to send and receive data over a UART
(Universal Asynchronous Receiver Transmitter).
-## Definition
+###Definition
[hal_uart.h](https://github.com/apache/incubator-mynewt-larva/blob/master/hw/hal/include/hal/hal_uart.h)
-## Examples
+###Examples
This example shows a user writing a character to the uart
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/imgmgr/imgmgr.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/imgmgr/imgmgr.md b/docs/os/modules/imgmgr/imgmgr.md
index fb4e359..187912c 100644
--- a/docs/os/modules/imgmgr/imgmgr.md
+++ b/docs/os/modules/imgmgr/imgmgr.md
@@ -3,7 +3,7 @@
-## Description
+###Description
This library accepts incoming image management commands from newtmgr and acts on them.
@@ -17,11 +17,11 @@ Image manager also can upload files to filesystem as well as download them.
Note that commands accessing filesystems (next boot target, file upload/download) will not be available unless project includes filesystem implementation.
-## Data structures
+###Data structures
N/A.
-## List of Functions
+###List of Functions
<Comments such as these instructions are placed within angle brackets. List all the functions here. Note how the anchors work. You put the text you want to show up as a link within [] and the relevant #heading within (). Note that the header has to have at least 2 words for the anchor to work - that's how it is. "no-highlight" disables syntax highlighting. You can enable it for a particular language by specifying what the language is instead of "no-highlight". Be warned that this highlighting or no-highlighting specification may not show up nicely on Mou.>
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/shell/shell.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/shell/shell.md b/docs/os/modules/shell/shell.md
index 94034a5..eaf9409 100644
--- a/docs/os/modules/shell/shell.md
+++ b/docs/os/modules/shell/shell.md
@@ -2,7 +2,7 @@
The shell is package sitting on top of console, handling 2 jobs: processing console input and implementing newtmgr line protocol over serial line. Shell runs on its own task.
-## Description
+###Description
* Shell's first job is directing incoming commands to other subsystems. It parses the incoming character string, and splits it into tokens. Then it looks for the subsystem to handle this command based on the first token of input.
@@ -87,7 +87,7 @@ stat stat
```
-## Data structures
+###Data structures
This data structure is used in holding information about registered command handlers.
@@ -105,7 +105,7 @@ struct shell_cmd {
| sc_cmd_func | Pointer to the command handler |
| sc_next | Bookkeeping linkage internal for shell |
-## List of Functions
+###List of Functions
<Comments such as these instructions are placed within angle brackets. List all the functions here. Note how the anchors work. You put the text you want to show up as a link within [] and the relevant #heading within (). Note that the header has to have at least 2 words for the anchor to work - that's how it is. "no-highlight" disables syntax highlighting. You can enable it for a particular language by specifying what the language is instead of "no-highlight". Be warned that this highlighting or no-highlighting specification may not show up nicely on Mou.>
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/5f860cb5/docs/os/modules/testutil/testutil.md
----------------------------------------------------------------------
diff --git a/docs/os/modules/testutil/testutil.md b/docs/os/modules/testutil/testutil.md
index 03ad6ec..50ef5a0 100644
--- a/docs/os/modules/testutil/testutil.md
+++ b/docs/os/modules/testutil/testutil.md
@@ -5,7 +5,7 @@ The testutil package is a test framework that provides facilities for specifying
You would use it to build regression tests for your library.
-## Description
+###Description
A package may optionally contain a set of test cases. Test cases are not normally compiled and linked when a package is built; they are only included
when the "test" identity is specified. All of a package's test code goes in its `src/test` directory. For example, the nffs package's test code is located in the following directory:
@@ -73,7 +73,7 @@ The following example demonstrates how to create a simple test suite.
The test suite would then be executed via a call to `test_suite_arithmetic()`.
-## Data structures
+###Data structures
```no-highlight
struct tu_config {
@@ -100,7 +100,7 @@ extern struct tu_config tu_config;
The global `tu_config` struct contains all the testutil package's settings.
This should be populated before `tu_init()` is called.
-## List of Functions
+###List of Functions
<Comments such as these instructions are placed within angle brackets. List all the functions here. Note how the anchors work. You put the text you want to show up as a link within [] and the relevant #heading within (). Note that the header has to have at least 2 words for the anchor to work - that's how it is. "no-highlight" disables syntax highlighting. You can enable it for a particular language by specifying what the language is instead of "no-highlight". Be warned that this highlighting or no-highlighting specification may not show up nicely on Mou.>