Commit graph

1200 commits

Author SHA1 Message Date
David B. Kinder d3b0cd4827 doc: move docgen filter out of shippable script
Because of known issues with Sphinx/Breathe tools we're using to
generate doxygen-based comments for our API documentation, we're getting
a bevy of warning messages written out. As a workaround for our CI
system, we created a filter-known-issues.py script to remove "expected"
warnings from the output.

This patch moves calling that filter script into the doc generation
Makefile so folks making local builds of the docs won't be tripped up by
all the warning messages either.  Output of the "make htmldocs" command
is now filtered so only "unexpected" errors and warnings will be shown.

(See https://github.com/sphinx-doc/sphinx/issue/2682 and
sphinx-doc/sphinx#2683i for the Sphinx/Breathe issues.)

Fixes #1527

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-22 08:07:30 -04:00
Michał Kruszewski ae76cb0598 net: Improve documentation about accessing Internet from qemu.
Add information that static IPV4 address of gateway needs to be
explicitly configured when DHCP is not supported.

Signed-off-by: Michał Kruszewski <michal.kruszewski@nordicsemi.no>
2017-09-22 08:01:44 -04:00
David B. Kinder 8c708fd049 doc: fix misspellings and hyphen use
fixed error introduced in application.rst (v1.8) along with a general
spelling check pass including consistent spelling of "runtime" and
hyphenated words with "pre-"

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-20 15:33:43 -04:00
Sebastian Bøe b56c317ffd doc: Add RISC-V to a list of SDK-supported ISA's
Signed-off-by: Sebastian Boe <sebastian.boe@nordicsemi.no>
2017-09-18 10:20:39 -04:00
David B. Kinder d98661ac27 doc: update to use macOS throughout docs
fixes #1499

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-15 17:21:47 -04:00
David B. Kinder d0e9d7c102 doc: fix link title in linux installation guide
fixes: #1501

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-14 20:48:54 -04:00
David B. Kinder 1b79787540 doc: tweak API doc CSS for RTD theme
Tweaks to the zephyr-doc-theme for improving the API layout
should be applied to the read-the-docs (RTD) theme too.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-13 09:14:21 -04:00
Massimiliano Cialdi d140a7f501 doc: fix instruction in Adding Directories section
Signed-off-by: Massimiliano Cialdi <cialdi@gmail.com>
2017-09-12 18:16:27 -04:00
Anas Nashif 1caa6f27ec doc: update release notes with ARC details
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-09-12 13:46:30 -04:00
Anas Nashif 2397ce8975 doc: update release notes index with 1.9
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-09-12 13:19:51 -04:00
David B. Kinder f64151a7f1 doc: improve API docs with sections
Doxygen-generated API documentation had the ability to
group API information into sections based on the class
of items: Defines, Typedefs, Enums, Functions and then
alphabetized with these groups.  By removing the
Breathe directive :content-only: we can get these class
groupings back (instead of having items just sorted
alphabetically across all classes), and also allow @name
groups to be defined for creating and displaying additional
groups (as requested by a developer).

Depends on CSS changes in
https://github.com/zephyrproject-rtos/docs-theme/pull/14

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-12 07:48:37 -04:00
David B. Kinder 91f25ee588 doc: exclude spi_legacy.h from API docs
spi.h and spi_legacy.h contain duplicate type and function names that
interfere with the doxygen-based API documentation.

fixes: #1425

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-10 09:18:01 -04:00
Andrew Boie 81c53364c9 doc: add gperf to workstation setup packages
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-09-07 16:33:33 -07:00
David B. Kinder 5bbaa12e59 doc: add 1.9.0 docs link to index page
In final preparation for the 1.9 release, add the doc link for the
tagged 1.9.0 documentation to the index page.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-07 18:27:51 -05:00
Shilpashree L C 4ef3378173 doc: update release notes for v1.9
Updated the Jira list with the latest jira entries
in the release notes. RTOS-2393

Signed-off-by: Shilpashree L C <shilpashree.lc@intel.com>
2017-09-07 12:29:37 -05:00
David B. Kinder 874ff05c73 doc: update release notes
remove WIP in heading, fix misspelling, fix python filename,
updated doc section

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-07 09:59:44 -05:00
Anas Nashif 0075488ccd doc: update 1.9.0 release notes
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-09-07 07:04:58 -05:00
Ruslan Mstoi 0bd1635518 Bluetooth: doc: update GATT PICS file
This commit makes GATT PICS up-to-date with the Zephyr HCI
TPG test plan

Signed-off-by: Ruslan Mstoi <ruslan.mstoi@intel.com>
2017-09-07 05:52:11 -05:00
David B. Kinder aea3038633 doc: genrest writing files without final newline
The script used to generate Kconfig documentation (genrest.py)
was creating .rst files without a final newline.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-06 18:37:55 -05:00
David B. Kinder 19d9d41921 doc: fix broken wiki reference
Reference to the Development Model should point to GitHub wiki

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-06 14:50:42 -05:00
Ruslan Mstoi 666d0b672a Bluetooth: doc: update SM PICs file
This commit makes SM PICs up-to-date with the Zephyr HCI
TPG test plan

Signed-off-by: Ruslan Mstoi <ruslan.mstoi@intel.com>
2017-09-06 12:00:11 -05:00
Ruslan Mstoi 8c99dbd3ca Bluetooth: doc: update L2CAP PICs file
This commit makes L2CAP PICs up-to-date with the Zephyr HCI
TPG test plan

Signed-off-by: Ruslan Mstoi <ruslan.mstoi@intel.com>
2017-09-06 11:59:35 -05:00
Ruslan Mstoi f23d44afd4 Bluetooth: doc: update GAP PICs file
This commit makes GAP PICs up-to-date with the Zephyr HCI
TPG test plan

Signed-off-by: Ruslan Mstoi <ruslan.mstoi@intel.com>
2017-09-05 09:16:44 -05:00
Carles Cufi 2e17a60957 doc: release notes: Add BLE controller to the highlights
Include the fact that the Zephyr BLE Controller is ready for
qualification in the release highlights.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-09-05 07:39:28 -04:00
Johan Hedberg d31189906b release-notes: Make a clear note about the Kconfig prefix change
Make it known to any out-of-tree apps that they need to update their
references to any Bluetooth Kconfig options.

Jira: ZEP-2558

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-09-04 13:04:08 -04:00
Anas Nashif 52fdd53c27 doc: cleanup release notes
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-09-04 09:16:46 -04:00
LC Shiplashree 6d6007892b doc: update release notes for v1.9
Added the list of Jira items, Kernel and HAL
related changes for release notes v1.9

Signed-off-by: Shilpashree L C <shilpashree.lc@intel.com>
2017-09-04 06:05:10 -04:00
David B. Kinder 70e381f2e8 doc: scan/fix .rst file misspellings
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-31 14:22:39 -04:00
Leandro Pereira ad98840a09 doc: release_notes: Add note about mbedTLS and TinyCrypt updates
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2017-08-31 13:54:14 -04:00
Leandro Pereira e8d7055760 doc: release_notes: Add note about ESP32 support
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2017-08-31 13:54:14 -04:00
Adithya Baglody 144b92ae7d doc: update release notes for v1.9
Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2017-08-30 08:08:27 -04:00
Harm Berntsen 1f46eb66d8 doc: fix Zephyr SDK archive URL
Signed-off-by: Harm Berntsen <git@harmberntsen.nl>
2017-08-26 08:06:55 -04:00
Maureen Helm 4f465b4e8e doc: Update 1.9 release notes for arm
Adds arm items to the architectures and boards sections.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-08-25 12:20:28 -04:00
Maureen Helm cd4a875e09 doc: Add Kinetis adc and pwm drivers to 1.9 release notes
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-08-25 12:20:28 -04:00
Savinay Dharmappa e27a162ac4 doc: updated doc for Zephyr release 1.9.
Updated doc for release 1.9 for :-

1. Added device tree support for Intel Quark based microcontroller
   boards.

Signed-off-by: Savinay Dharmappa <savinay.dharmappa@intel.com>
2017-08-25 09:08:20 -04:00
Youvedeep Singh 7725fc07e3 doc: updated doc for Zephyr release 1.9.
Updated doc for rel 1.9 for :-
1. TICKLESS Kernel support for nrf RTC timer.
2. Added test cases for stress test round robin scheduling and priority
premptive scheduling.

Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
2017-08-25 08:57:55 -04:00
David B. Kinder 8875a98221 doc: fix sphinx 1.5 broken search box
Sphinx 1.5 introduced changes that broke the
sphinx-supplied search (as explained in
https://github.com/sphinx-doc/sphinx/pull/2454)

This patch, along with a patch in the docs-theme
https://github.com/zephyrproject-rtos/docs-theme/pull/10
repairs things.

Jira: INF-136

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-22 16:28:53 -04:00
David B. Kinder b03ed2b2b9 doc: remove use of :download: directive
The :download: directive doesn't format well on output, and also
links to files that likely have linux line endings that don't
display well on Windows systems.

fixes: #1204

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-22 08:34:37 -04:00
Paul Sokolovsky d50bea3c5e doc: 1.9: Elaborate on BSD Sockets and some other factual fixes
There're no "POSIX API support", of POSIX features, only subsets of
Pthreads and BSD Sockets APIs are implemented.

Also, mention HTTP client/server improvements.

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2017-08-22 08:17:04 -04:00
Michael Scott 9ad830ab54 doc: Move LwM2M support to Major enhancements section of 1.9 rel notes
Signed-off-by: Michael Scott <michael.scott@linaro.org>
2017-08-21 08:37:15 -04:00
David B. Kinder cf17f4870d doc: fix typos and licensing text
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-18 21:42:08 -04:00
David B. Kinder a13eaf5082 doc: add custom 404 page
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-18 21:41:45 -04:00
Anas Nashif 85f7fbcfed doc: move API under Developer Guides
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
Anas Nashif 8fc665c427 doc: move security section up
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
Anas Nashif 3e4efa02f2 doc: put licensing and release notes in the index page
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
Anas Nashif e381a61ff0 doc: simplify top level TOC
Simplify top-level table of contents and create the user guide which
includes the application development primer and other guides and
refereces instead of having them at the top-level.

Also move glossary section away from top-level TOC and remove broken
search link.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
Anas Nashif 19c823e2e9 doc: move application development and reference into one section
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
Anas Nashif f39e2b4103 doc: add Xtensa as supported architecture
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
Anas Nashif 3009359601 doc: move device drivers, model and tree in one section
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-18 16:32:28 -04:00
David B. Kinder 1257bdc9ec doc: add project security docs
While we're working on doc publishing that separates
kernel docs that are release-specific from project docs
that aren't, (temporarily) put the security documents
here so they'll be published with the 1.9 release.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-17 23:20:40 -04:00
Punit Vara ede588a19f doc: Add APDS9960 sensor driver in release note v1.9
Signed-off-by: Punit Vara <punit.vara@intel.com>
2017-08-17 14:17:41 -04:00
Carles Cufi 16a28bf106 Bluetooth: VS: Add RSSI to Scan Req Received Event
In order to allow for the controller to report the RSSI of a received
Scan Request, include the field inside the Scan Request Received
Vendor-Specific Event.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-08-17 12:36:51 +02:00
David B. Kinder ab04339e2f doc: update 1.9 release notes with doc changes
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-16 19:45:51 -04:00
Marti Bolivar cf9a5e352f doc: 96Boards Carbon: add Bluetooth setup docs
Add cross-referenced information on the 96b_carbon and
96b_carbon_nrf51 pages which disambiguates between the two "boards".
Also describe how to flash 96b_carbon_nrf51 with
samples/bluetooth/hci_spi and 96b_carbon with samples/bluetooth/ipsp
to support a Bluetooth HCI stack on 96Boards Carbon (the physical
board).

While we're here, make the documentation page for 96b_carbon match the
format in doc/templates/board.tmpl.

Signed-off-by: Marti Bolivar <marti.bolivar@linaro.org>
2017-08-15 22:58:02 +03:00
Ricardo Salveti 8dbb388000 samples: Bluetooth: add HCI SPI raw handler sample
Add a sample application that allows a Zephyr-based Bluetooth
controller to interface with an HCI driver via SPI. This sample
implements the same BT SPI protocol already as Zephyr's HCI SPI
driver.

Currently, the sample only supports the legacy SPI API.

Provide a single configuration file, avoiding board-specific
files. Some board-specific configuration information must be provided
via other means:

- CONFIG_BT_CONTROLLER_TO_HOST_SPI_DEV_NAME
- CONFIG_BT_CONTROLLER_TO_HOST_SPI_IRQ_DEV_NAME
- CONFIG_BT_CONTROLLER_TO_HOST_SPI_IRQ_PIN

Signed-off-by: Ricardo Salveti <ricardo.salveti@linaro.org>
Signed-off-by: Marti Bolivar <marti.bolivar@linaro.org>
Signed-off-by: Michael Scott <michael.scott@linaro.org>
2017-08-15 22:58:02 +03:00
Carles Cufi 0ac5dd760f doc: Clarify the Bluetooth 5.0 support in 1.9
Since Advertising Extensions are not supported yet by Zephyr, clarify
the extend of Bluetooth 5.0 support in the subsystem.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-08-15 09:56:56 -04:00
Carles Cufi 749d318199 doc: Add BLE controller changes to 1.9 release notes
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-08-15 09:35:33 -04:00
Luiz Augusto von Dentz f54f2bac49 doc: Add Bluetooth host changes to 1.9 release note
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
2017-08-15 09:35:33 -04:00
Piotr Mienkowski cbff174d3a drivers: Add I2S (Inter-IC Sound) driver API
Origin: Original

Jira: ZEP-230
Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2017-08-14 11:14:34 -04:00
David B. Kinder be9f577c21 doc: add CII badge, include README in intro
LF is requesting a Core Infrastructure Initiative evaluation
and badge on our website.  This PR introduces that into our
README.rst on GitHub and also merges content from the
README into our introduction document.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-11 08:06:43 -04:00
Jukka Rissanen eed3298ac2 doc: net: Add networking changes to 1.9 release note
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-08-09 10:09:23 -04:00
Johan Hedberg 2975ca0754 Bluetooth: Kconfig: Rename CONFIG_BLUETOOTH_* to CONFIG_BT_*
The API name space for Bluetooth is bt_* and BT_* so it makes sense to
align the Kconfig name space with this. The additional benefit is that
this also makes the names shorter. It is also in line with what Linux
uses for Bluetooth Kconfig entries.

Some Bluetooth-related Networking Kconfig defines are renamed as well
in order to be consistent, such as NET_L2_BLUETOOTH.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-08-09 11:14:19 +03:00
Michael Scott c46c206f8c net: lwm2m: initial library support for LWM2M
Origin: SICS-IoT / Contiki OS
URL: https://github.com/sics-iot/lwm2m-contiki/tree/lwm2m-standalone-dtls
commit: d07b0bcd77ec7e8b93787669507f3d86cfbea64a
Purpose: Introduction of LwM2M client library.
Maintained-by: Zephyr

Lightweight Machine-to-Machine (LwM2M) is a protocol stack extension
of the Constrained Application Protocol (CoAP) which uses UDP
transmission packets.

This library was based on source worked on by Joakim Eriksson,
Niclas Finne and Joel Hoglund which was adopted by Contiki and then
later revamped to work as a stand-alone library.

A VERY high level summary of the changes made:
- [ALL] sources were re-formatted to Zephyr coding standards
- [engine] The engine portion was re-written due to the heavy reliance
  on ER-CoAP APIs which are not compatible to the Zephyr CoAP APIs as
  well as other Zephyr specific needs.
- [engine] All LWM2M/IPSO object data is now abstracted into resource
  data which stores information like the data type, length, callbacks
  to help with read/write.  The engine modifies this data directly (or
  makes callbacks) instead of all of the logic for this living in each
  object's code. (This wasn't scaling well as I was implementing
  changes).
- [engine] Related to the above change, I also added a generic set of
  getter/setter functions that user applications can call to change
  the object data instead of having to add getter/setting methods in
  each object.
- [engine] The original sources shared the engine's context structure
  quite extensively causing a problem with portability. I broke up the
  context into it's individual parts: LWM2M path data, input data and
  output data and pass only the needed data into each set of APIs.
- [content format read/writer] sources were re-organized into single
  .c/h files per content formatter.
- [content format read/writer] sources were re-written where necessary
  to remove the sharing of the lwm2m engine's context and instead only
  requires the path and input or output data specific to it's
  function.
- [LwM2M objects] re-written using the new engine's abstractions

Signed-off-by: Michael Scott <michael.scott@linaro.org>
2017-08-09 10:55:53 +03:00
Inaky Perez-Gonzalez 662dde6675 sanitycheck: validate YAML files w/ schemas files
This introduces an schema-based YAML validation process when loading
any YAML file, before doing any operations on them. An exception will
be raised at SanityConfigParser() if the file fails to verify with the
given schema.

Schemas are defined for the platform files in board///*.yaml and for
the (sample|testcase).yaml files. The verification is done using the
pykwalify python library. If not installed, a warning is printed and
the verification schema is skipped. At some point, we might want to
force it being installed.

The verification library is made a separate module (scl.py) so it can
be easily imported by others.

Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-08-07 21:19:12 -04:00
Sebastian Bøe d3409c5e67 doc: scripts: sanitycheck: s/ini/yaml/
AFAIK an ini file system was ported to a yaml file system. But some
ini file references still remain.

This patch changes all ini file mentions into yaml.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2017-08-07 12:58:49 -04:00
Anas Nashif f96329a63b doc: net_app: use definition list instead of bullets
Using bullets was too dense and not easy to read. Definition lists makes
this document more pleasant to read.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-06 12:13:52 -04:00
Anas Nashif f4668ccebd doc: enable building HTML doxygen
This will be posted to the cloud to ease review of changes to doxygen
modules and structure.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-06 09:50:55 -04:00
Anas Nashif 3ac7b3a229 doc: qemu target was deprecated, use 'run'
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-03 11:48:55 -04:00
David B. Kinder 62a0cd246d doc: fix uses of back quotes in documentation
ReST defines interpreted text roles where text enclosed by single quotes
can be "intrepreted", for example :ref:`some name` becomes a link to
a label anywhere in the doc set named "some name", :c:func:`funcname()`
becomes a link to the API documentation for "funcname", and
:option:`CONFIG_NAME` becomes a link to, in our case, the documentation
for the generated Kconfig option.

This patch fixes uses of `some name` (without a role) by either adding
an explicit role, or changing to ``some name``, which indicates inline
code block formatting (most likely what was intended).

This is a precursor to changing the default behavior of interpreted
text to treat `some name` as :any:`some name` (as configured in
doc/conf.py), which would attempt to create a link to any available
definition of "some name".

We may not change this default role behavior, but it becomes an option
after the fixes in this patch.  In any case, this patch fixes incorrect
uses of single-quoted text (possibly introduced because GitHub's
markdown language uses single-quoted text for inline code formatting).

Jira: ZEP-2414

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-03 11:08:23 -04:00
David B. Kinder a2bb0faa6d doc: add GitHub mention on doc home page
Request from Marketing and Linux Foundation to add a link to the Zephyr
GitHub repo on the documentation home page.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-03 10:51:07 -04:00
Anas Nashif 11acc391dc kconfig: remove empty and unused kernel.config
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-03 07:19:29 -05:00
David B. Kinder e9a3411651 doc: spelling fixes in docs
regular scan through docs and KConfig files for spelling issues
and UTF-8 characters

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-02 15:14:13 -04:00
Anas Nashif 9527693f2a sanitycheck: support feature classes for boards
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-02 07:31:22 -04:00
Paul Sokolovsky fbd593408f net: sockets: Add docs for BSD Sockets compatible API.
Includes updates to Zephyr networking API feature list (also minor
tweaks to it not dorectly related to sockets), overview of BSD
Sockets compatible API, and basic API reference section.

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2017-08-01 22:09:52 -04:00
Jukka Rissanen 0e3b7f88b6 doc: net: Add information about net-app API
The net-app API is a new API for applications to use when configuring
the network subsystem during device boot or when creating simple client
or server applications. This commit gives general information about the
net-app API and its usage.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-08-01 12:28:19 -04:00
Leandro Pereira 14c56691c7 crypto: Update TinyCrypt to 0.2.7
Version 0.2.7 of this library has been released on June 30th, and this
patch updates the library from version 0.2.6.  A summary of changes
is available at the official repository at:

    https://github.com/01org/tinycrypt/releases/tag/v0.2.7

There were some API changes in this version, so some tests are not
building: ccm_mode, ecc_dh, and ecc_dsa.  Fixes to these tests and
subsystems affected by the changes will be provided.

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-08-01 10:35:06 -04:00
Carles Cufi 6f7adbde02 doc: Switch to MSYS2's dtc package
After Andy Gross submitted a package for the Device Tree Compiler
(dtc), and it has now become available on the MSYS2 package
repository, it's no longer needed for the user to manually compile
the DTC.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-08-01 08:28:07 -04:00
David B. Kinder 3002f36d37 doc: linux installation for python3-pip incorrect
package name is python3-pip (not python-pip3)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-07-31 20:12:13 -04:00
Jukka Rissanen 539b0c46ff net: doc: Add missing defgroups to network header files
Some of the networking header files in include/net/ directory were
missing @defgroup doxygen directives.

There was also duplicate @defgroup directives which are now changed
to @addtogroup directives.

Added also missing API links to doc/api/networking.rst file.

Added exceptions to .known-issues/doc/networking.conf file so that
doxygen does not complain.

Jira: ZEP-2308

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-07-31 20:59:09 +03:00
David B. Kinder 2d4728d52e doc: add CONTRIBUTING.rst to project repo and docs
GitHub notices a CONTRIBUTING file in a repo's root and will
automatically
add a link to this file on the page when a contributor creates an Issue
or opens a Pull Request. (Expectation is CONTRIBUTING will have
information about how to contribute to the project, format code,
test fixes, and submit patches.

We also want to have this document accessible from our technical docs,
and not duplicate the content, so add linkage to make this work.

The zephyrproject github wiki article that contributed to this new
CONTRIBUTING doc will be made into a reference to this new doc once
this PR is approved and merged.

Replaces PR #929

Jira: ZEP-2085

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-07-30 20:41:43 -04:00
Inaky Perez-Gonzalez eb5ff2606f doc/linux: pip installs in user area vs system wide
When installing packages with PIP, recommend --user so that it is
installed in the user's directory vs system wide, potentially
overriding system-wide files that are under package manager control
and introducing possible security issues.

Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-07-25 18:05:10 -04:00
Inaky Perez-Gonzalez cb290aa708 doc/linux: recommend install pip3 from distro packaging
Avoid overriding files in the system that shall be under package
manager control with who knows what is downloaded that day, as it can
introduce security issues.

Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-07-25 18:05:10 -04:00
Leandro Pereira f5a8d498ea scripts: Convert gen_offset_header to Python
By having this as a Python script rather than a host executable, this
should simplify the build process on non-Unix platforms.

With this change, pyelftools is now required to build Zephyr.  Please
consult the getting started documentation for your host platform for
installation instructions.

Jira: ZEP-2062

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2017-07-24 11:20:04 -07:00
Yannis Damigos c78c452315 doc: system_log: Fix global Kconfig options path
This patch fixes global Kconfig options path for system logging.

Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
2017-07-23 07:01:18 -04:00
Anas Nashif 35a70b41dd doc: add python pip requirements.txt
List all required modules in one file and just call pip with this
file to install all needed modules instead of listing them
individually.

Added gitlint and pyocd and other required packages to the list.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-07-22 14:04:20 -04:00
David B. Kinder 014d5f7d80 doc: output alphabetic Kconfig options index
Instead of a configuration options index in "discovered" order
during the walk of the Kconfig files, create the index in alphabetic
order.

Also added a more descriptive name above the displayed table and added
table headings.

jira: ZEP-2310

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-07-20 13:48:11 -07:00
Johan Hedberg 0ec2630882 Bluetooth: Mesh: Add initial implementation
Add an initial implementation for the Bluetooth Mesh Profile
Specification. The main code resides in subsys/bluetooth/host/mesh and
the public API can be found in include/bluetooth/mesh.h. There are a
couple of samples provided as well under samples/bluetooth and
tests/bluetooth.

The implementation covers all layers of the Bluetooth Mesh stack and
most optional features as well. The following is a list of some of
these features and the c-files where the implementation can be found:

 - GATT & Advertising bearers (proxy.c & adv.c)
 - Network Layer (net.c)
 - Lower and Upper Transport Layers (transport.c)
 - Access Layer (access.c)
 - Foundation Models, Server role (health.c & cfg.c)
 - Both PB-ADV and PB-GATT based provisioning (prov.c)
 - Low Power Node support (lpn.c)
 - Relay support (net.c)
 - GATT Proxy (proxy.c)

Notable features that are *not* part of the implementation:

 - Friend support (initial bits are in place in friend.c)
 - Provisioner support (low-value for typical Zephyr devices)
 - GATT Client (low-value for typical Zephyr devices)

Jira: ZEP-2360

Change-Id: Ic773113dbfd84878ff8cee7fe2bb948f0ace19ed
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-07-20 09:30:44 +03:00
Maureen Helm 81db5e4b71 doc: Update OpenSDA doc to reflect new OPENSDA_FW variable
Kinetis boards now have a makefile variable to select the flash/debug
scripts based on the OpenSDA firmware. Update the general OpenSDA
documentation accordingly.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-07-19 14:28:08 -05:00
David B. Kinder 2c5b3c1605 doc: update source tree structure documentation
New top-level dts/ folder and description added.

Fixed error in bullet list in subsys/ description (needed
a blank like before the list.

Alphabetized folder list (subsys/ was listed after tests/)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-07-13 10:09:55 -05:00
Andrew Boie 65a9d2a94a kernel: make K_.*_INITIALIZER private to kernel
Upcoming memory protection features will be placing some additional
constraints on kernel objects:

- They need to reside in memory owned by the kernel and not the
application
- Certain kernel object validation schemes will require some run-time
initialization of all kernel objects before they can be used.

Per Ben these initializer macros were never intended to be public. It is
not forbidden to use them, but doing so requires care: the memory being
initialized must reside in kernel space, and extra runtime
initialization steps may need to be peformed before they are fully
usable as kernel objects. In particular, kernel subsystems or drivers
whose objects are already in kernel memory may still need to use these
macros if they define kernel objects as members of a larger data
structure.

It is intended that application developers instead use the
K_<object>_DEFINE macros, which will automatically put the object in the
right memory and add them to a section which can be iterated over at
boot to complete initiailization.

There was no K_WORK_DEFINE() macro for creating struct k_work objects,
this is now added.

k_poll_event and k_poll_signal are intended to be instatiated from
application memory and have not been changed.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-07-10 11:44:56 -07:00
David B. Kinder cdda7ceb8c doc: add placeholder for 1.9 release notes
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-07-07 10:50:45 -05:00
John Andersen 913e2cdb24 samples: net Documented QEMU_INSTANCE usage
Signed-off-by: John Andersen <john.s.andersen@intel.com>
2017-06-29 07:20:46 -04:00
Anas Nashif f9f2bd9d83 doc: update qemu_x86 instructions
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-06-28 16:58:37 -04:00
Bogdan Davidoaia 4b95a4e563 doc: update network buffers push/pull examples
- add net_buf_push_u8 to push examples
- move net_buf_pull_le32 from push to pull examples

Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-06-22 12:58:01 -04:00
Kumar Gala 6f53ae20ac doc: update sanitycheck doc to clarify some details
Add details about that fact that ram/flash params on the board yaml are
specified in terms of Kilobytes.  Also what the defaults are if they are
not specified.

Clarified that ignore_tags is meant for ignoring something from both
build and running. (I can see adding a tag for tests we build, but
ignore that we can run).

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-06-22 10:48:01 -04:00
Anas Nashif 24e1fc35c6 doc: add documentation about sanitycheck
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-06-21 20:56:53 -04:00
Anas Nashif 0f3a69a313 ztest: update documentation for yaml
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-06-21 20:56:53 -04:00
David B. Kinder a741c00a08 doc: fix references to moved files
Some recent PRs moved sample files to a new location

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-20 18:26:53 -04:00
David B. Kinder 2670bd6123 doc: fix headings in device tree doc
Heading hiearchy is #*=-
Also tweaked some layout formatting

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-19 17:45:27 -04:00
David B. Kinder fffb5d9c90 eoc: move non-board docs from boards TOC list
A couple of docs were created in previous PRs with board support
information common to a few boards.  Move these to a new section
for "Board Support Tools".  (I debated about hiding them completely
but decided it would still be useful to have these tool docs appear
in the table of contents, just not embedded with the supported boards
docs.)

Moved these board tools docs over to the doc/ folder and out of
boards/ and removed these pages from the navigation index.

JIRA: ZEP-2285

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-17 07:07:28 -04:00
David B. Kinder a53957fdf8 doc: update release-notes index page
Add general release information to the release-notes index page
(currently just a set of links to the release-specific pages).

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-16 21:01:00 -04:00
Anas Nashif f50ce0a58b doc: add 1.8 release notes
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-06-16 08:47:59 -04:00
David B. Kinder cbec29ab95 doc: change UTF-8 chars to sphinx inline replaces
Avoiding use of UTF-8 characters (trip up some tools)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-16 07:35:11 -05:00
David B. Kinder b71a722752 doc: Add link to v1.8 documentation
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-15 23:31:30 -04:00
David B. Kinder 547c74cb3c doc: fix misspellings in docs
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-13 19:45:38 -04:00
Andrew Boie ea310faa3a doc: update for new stack macros
__stack is now deprecated.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-06-13 14:34:07 -04:00
David B. Kinder f0095619ed doc: fix linenum references in api example
fixed literalinclude warning that referenced beyond end of file and
added lineno-start option to show correct line number of included file

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-06-07 22:54:29 -04:00
Andrew Boie eaa42889de doc: add interrupt implementation details
Issue: ZEP-634
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-06-06 22:23:06 -04:00
Carles Cufi 4b355f1191 doc: getting_started: Add WSL instructions
Having tried and tested building Zephyr using the standard SDK on
Windows 10 using the new WSL (Windows Subsystem for Linux), add the
documentation so that others can benefit from the functionality.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-06-03 15:00:24 -04:00
Andy Gross 252da09d02 doc: Add Device Tree documentation
This patch adds documention for device tree development in Zephyr.  This
includes a description of device tree, how it is integrated into Zephyr,
and other related information.

Signed-off-by: Andy Gross <andy.gross@linaro.org>
2017-06-02 16:56:30 -04:00
Anas Nashif 294f845d6b doc: emphasize usage of MSYS2 MSYS Shell
Some users started the wrong shell (MinGW) and ended up having build
issues, added a note about starting the right shell.

Jira: ZEP-2004
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Anas Nashif 9901d998e5 doc: also require dtc to be installed for linux
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Anas Nashif 7115afd133 doc: update macOS getting started documentation
Fixed documentation and updated config files for xtools to be used with
the latest version of crosstool-ng (1.23)

Jira: ZEP-616, ZEP-2146
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Anas Nashif 5472fbf7f7 doc: remove links to wiki
Wiki is being obsoleted, so remove any links that might become dead
really soon.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Marcel Holtmann 6c2aba2eb7 doc: Add Bluetooth HCI vendor specification
Signed-off-by: Marcel Holtmann <marcel.holtmann@intel.com>
2017-05-31 18:38:46 +03:00
Carles Cufi eff52d9854 doc: getting_started: Switch to upstream DTC tree
With the required patch already being upstream, we can now redirect
users to the standard vanilla DTC tree.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-05-21 09:25:19 -04:00
Anas Nashif 2b13dde488 doc: update SDK link to 0.9.1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-20 09:35:51 -04:00
Anas Nashif 3ba693fe03 doc: do not put version in breadcrumbs for daily docs
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-19 16:38:21 -04:00
Carles Cufi c698956039 doc: getting_started: Remove legacy MinGW instructions
MinGW is old and unsupported, and it does not even download properly
these days. Remove the instructions that rely on MinGW since they are
only confusing for people trying to build on Windows.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-05-19 10:15:57 -04:00
Marti Bolivar 0c185d976a doc: board_porting: add note about sanity_chk
New boards need to be integrated into the sanitycheck infrastructure.

Signed-off-by: Marti Bolivar <marti.bolivar@linaro.org>
2017-05-18 20:24:58 -04:00
Carles Cufi 51ac90dc3c doc: win: Add DTC and pip instructions
Add instructions to build the DTC from Windows, note that the following
2 caveats apply:

* The flex version needs to be pinned to 2.6.0 because of a bug with the
current MSYS2 flex

* The repository to clone DTC from is currently my own on GH while
waiting for a patch to be accepted upstream

Additionally this removes the python2 requirement and adds documentation
on installing pip an pyaml.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-05-18 20:23:54 -04:00
David B. Kinder 11d74493a8 doc: tweak doc build tools instructions
need to use sudo -E (to get environment variables)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-05-18 20:22:14 -04:00
David B. Kinder 11baf5c0f1 doc: identify release version in generated docs
It's not obvious which kernel release version you're reading about in the
documentation.  Add the version info in the breadcrumb header (instead
of "Home / Docs / Subsystems /" show as
"Home / Docs / 1.8 / Subsystems /").

(Depends on docs-theme PR-9, but can be merged now with no ill-effect)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-05-18 20:21:27 -04:00
Andy Ross 73cb9586ce k_mem_pool: Complete rework
This patch amounts to a mostly complete rewrite of the k_mem_pool
allocator, which had been the source of historical complaints vs. the
one easily available in newlib.  The basic design of the allocator is
unchanged (it's still a 4-way buddy allocator), but the implementation
has made different choices throughout.  Major changes:

Space efficiency: The old implementation required ~2.66 bytes per
"smallest block" in overhead, plus 16 bytes per log4 "level" of the
allocation tree, plus a global tracking struct of 32 bytes and a very
surprising 12 byte overhead (in struct k_mem_block) per active
allocation on top of the returned data pointer.  This new allocator
uses a simple bit array as the only per-block storage and places the
free list into the freed blocks themselves, requiring only ~1.33 bits
per smallest block, 12 bytes per level, 32 byte globally and only 4
bytes of per-allocation bookeeping.  And it puts more of the generated
tree into BSS, slightly reducing binary sizes for non-trivial pool
sizes (even as the code size itself has increased a tiny bit).

IRQ safe: atomic operations on the store have been cut down to be at
most "4 bit sets and dlist operations" (i.e. a few dozen
instructions), reducing latency significantly and allowing us to lock
against interrupts cleanly from all APIs.  Allocations and frees can
be done from ISRs now without limitation (well, obviously you can't
sleep, so "timeout" must be K_NO_WAIT).

Deterministic performance: there is no more "defragmentation" step
that must be manually managed.  Block coalescing is done synchronously
at free time and takes constant time (strictly log4(num_levels)), as
the detection of four free "partner bits" is just a simple shift and
mask operation.

Cleaner behavior with odd sizes.  The old code assumed that the
specified maximum size would be a power of four multiple of the
minimum size, making use of non-standard buffer sizes problematic.
This implementation re-aligns the sub-blocks at each level and can
handle situations wehre alignment restrictions mean fewer than 4x will
be available.  If you want precise layout control, you can still
specify the sizes rigorously.  It just doesn't break if you don't.

More portable: the original implementation made use of GNU assembler
macros embedded inline within C __asm__ statements.  Not all
toolchains are actually backed by a GNU assembler even when the
support the GNU assembly syntax.  This is pure C, albeit with some
hairy macros to expand the compile-time-computed values.

Related changes that had to be rolled into this patch for bisectability:

* The new allocator has a firm minimum block size of 8 bytes (to store
  the dlist_node_t).  It will "work" with smaller requested min_size
  values, but obviously makes no firm promises about layout or how
  many will be available.  Unfortunately many of the tests were
  written with very small 4-byte minimum sizes and to assume exactly
  how many they could allocate.  Bump the sizes to match the allocator
  minimum.

* The mbox and pipes API made use of the internals of k_mem_block and
  had to be ported to the new scheme.  Blocks no longer store a
  backpointer to the pool that allocated them (it's an integer ID in a
  bitfield) , so if you want to "nullify" them you have to use the
  data pointer.

* test_mbox_api had a bug were it was prematurely freeing k_mem_blocks
  that it sent through the mailbox.  This worked in the old allocator
  because the memory wouldn't be touched when freed, but now we stuff
  list pointers in there and the bug was exposed.

* Remove test_mpool_options: the options (related to defragmentation
  behavior) tested no longer exist.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2017-05-13 14:39:41 -04:00
Andrew Boie d26cf2dc33 kernel: add k_thread_create() API
Unline k_thread_spawn(), the struct k_thread can live anywhere and not
in the thread's stack region. This will be useful for memory protection
scenarios where private kernel structures for a thread are not
accessible by that thread, or we want to allow the thread to use all the
stack space we gave it.

This requires a change to the internal _new_thread() API as we need to
provide a separate pointer for the k_thread.

By default, we still create internal threads with the k_thread in stack
memory. Forthcoming patches will change this, but we first need to make
it easier to define k_thread memory of variable size depending on
whether we need to store coprocessor state or not.

Change-Id: I533bbcf317833ba67a771b356b6bbc6596bf60f5
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-05-11 20:24:22 -04:00
David B. Kinder 7200513699 doc: define more unicode replacement chars
added some additional unicode character replacements for
those encountered (will fix those references after this PR)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-05-09 20:16:11 -04:00
David B. Kinder 2f41cb8329 doc: misspelling and UTF-8 fixes
More general spelling fixes, and cleaning up stray UTF-8 characters
such as curly-quotes, em- and en-dashes.  Use replacement strings
for |reg| and |trade|.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-05-09 20:15:49 -04:00
Anas Nashif 6183d2bde7 doc: remove reference to legacy.h header
Jira: ZEP-2112

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-08 12:53:06 -04:00
Tomasz Bursztyka b192ea2bd4 doc/kernel: Fix polling documentation
Event parameter were missing on the runtime k_poll_init() calls.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-05-08 08:28:32 -04:00
David B. Kinder 9d4c2748db doc: remove kernel version 2 wording
Version 1 kernel (release 1.5 and earlier) is far enough from memory now
to remove the "version 2" wording in the kernel documentation and just
call it "the kernel".

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-05-04 18:25:14 -04:00
David B. Kinder 97ee53aa21 doc: fix doc headings in security.rst
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-05-01 23:14:38 -04:00
Anas Nashif e588ca0169 doc: change pointer to SDK
We now use github for the SDK downloads and releases.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-04-30 20:10:07 -04:00
David B. Kinder 1d36cfba90 doc: change gerrit references to github
We're moving the project code to GitHub folks, so change references
in the documentation from gerrit over to GitHub:
https://github.com/zephyrproject-rtos/zephyr

Change-Id: Ic491a62ed43fc799eb5698e92435cb6eb4d89394
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-28 21:21:06 +00:00
David B. Kinder 1be4d13b39 doc: remove listing of old documentation archives
Per Anas, remove references to the pre-1.5 release documentation
Archived content is still accessible if you know where it is:
https://www.zephyrproject.org/doc/1.3.0/  (for example)

Change-Id: Ia17c9ff04a76b86516f804794d6e3adb1cc2980d
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-28 21:14:18 +00:00
Jessica Wagantall 2bbaa13533 doc: Updating installation instructions
The installation instructions for Ubuntu 16.04
needed to be updated to use the correct packages
rt:40021

Change-Id: Ia6bfb66b7d24dda2556b76a495988eea20037607
Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
2017-04-28 15:32:44 +00:00
Jukka Rissanen f65c06eea5 doc: net: Fix IP stack architecture data flow pictures
The TX side of network data flow was changed so update the
network architecture documentation.

Change-Id: I88680a776dfe87a8dac868cba1b536f2c926c0cd
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-04-28 15:01:12 +03:00
David B. Kinder 2a1adfccae doc: tweak Sphinx linkcheck options
Sphinx has a builder option that we can use to check links
(invoked with '$ make linkcheck' in the /doc folder)
Add some configuration tweaks to conf.py, and update the
Makefile to also use the nitpick (-n) option to Sphinx
if this linkcheck build option is selected (does much more
checking of internal references)

Change-Id: Ib413bc8d4195c72f1a8a4c345a5a722f88fad8b8
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-28 00:44:40 +00:00
David B. Kinder deac5a2565 doc: fix broken link in 1.7 release notes
fixed using a :ref: instead of a hard link as well

Change-Id: I383ef137934f0c616b9a98159980b954ca1b8871
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-27 15:19:26 -07:00
David B. Kinder 24488bfac2 doc: fix typo in shell doc
Incorrect quoting left a :option: inline tag in the generated output

Change-Id: Iab2e4be692e138cf01f1cc276e830b2cb0e41b03
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-26 11:15:25 -07:00
David Brown edd0240397 doc: Add secure coding guidelines
Initial version of some document to capture the secure coding
practices used in the Zephyr project.

Signed-off-by: David Brown <david.brown@linaro.org>
Change-Id: Ic20546a7af832dc7bd193eb91ed44f1badc3ab87
2017-04-25 02:32:14 +00:00
Kumar Gala 83a5990185 docs: convert to using newly introduced integer sized types
Convert code to use u{8,16,32,64}_t and s{8,16,32,64}_t instead of C99
integer types.

Jira: ZEP-2051

Change-Id: I731cc91517436685836023cbda34f894586a54bc
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-04-21 16:11:51 +00:00
Tomasz Bursztyka e5896906f6 net: Rename all *_BUF() macros to *_HDR()
Most of these macros are not exactly exposing a buffer, but a specific
header pointer (ipv6, ivp4, ethernet and so on), so it relevant to
rename them accordingly.

Change-Id: I66e32f7c3f2bc75994befb28d823e24299a53f5c
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-04-21 14:19:51 +03:00
Tomasz Bursztyka bf964cdd4c net: Renaming net nbuf API to net pkt API
There have been long lasting confusion between net_buf and net_nbuf.
While the first is actually a buffer, the second one is not. It's a
network buffer descriptor. More precisely it provides meta data about a
network packet, and holds the chain of buffer fragments made of net_buf.

Thus renaming net_nbuf to net_pkt and all names around it as well
(function, Kconfig option, ..).

Though net_pkt if the new name, it still inherit its logic from net_buf.
'
This patch is the first of a serie that will separate completely net_pkt
from net_buf.

Change-Id: Iecb32d2a0d8f4647692e5328e54b5c35454194cd
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-04-21 14:19:50 +03:00
Anas Nashif 306e15e0a1 kernel: remove legacy kernel support
Change-Id: Iac1e21677d74f81a93cd29d64cce261676ae78a6
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-04-19 15:48:37 +00:00
Anas Nashif d3af7f75c9 Merge "Merge net branch into master" 2017-04-14 01:43:34 +00:00
Kumar Gala c7bc909914 tests/ztest: rename assert macros to be zephyr specific
ztest has a number of assert style macros and used a baseline assert()
that varies from the system definition of assert() so lets rename
everything as zassert to be clear.

Change-Id: I7f176b3bae94d1045054d665be8b5bda947e5bb0
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-04-13 21:17:33 +00:00
Jukka Rissanen 611ccaaf88 net: dns: Remove dns_client API and sample application
DNS resolving is better done with DNS resolve API so remove
the DNS client API which is quite hard to use.

Change-Id: Ide4973a5be674414ea6e04a35c938195cce40b6a
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-04-13 15:21:45 +03:00
David B. Kinder d17a053605 doc: add substitutions for special characters
Add substitution patterns for (r), (tm), and (c) special symbols
via |reg| |trade| and |copy|  (same names as html entities
e.g., &reg; )

Change-Id: I0d4932435107a0bb9eef7c319c9307883e00bcb5
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:31:47 +00:00
David B. Kinder 6262643cf6 doc: remove reference to deleted sample code
A legacy sample was remove, so delete reference to it.

Change-Id: Ibd2d5fd25d799974bf60fe18847262ecbc0d3ea4
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:31:34 +00:00
David B. Kinder a531e349a7 doc: fix reference to include file
fix reference to net/buf.h to include/net/buf.h

Change-Id: I29514b5f48e6f0eefb0ed53185ed3b1de2a2f3f4
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:31:02 +00:00
David B. Kinder 7dcf44f3ea doc: fix :file: reference to include file
fix reference to  include/toolchain/gcc.h

Change-Id: I5999e17a5aed7c2f2e9cce40750815be30b6de53
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:30:42 +00:00
David B. Kinder a17e09484a doc: fix :file: reference to include file
fix references to include/logging/sys_log.h

Change-Id: Ia0a83cbc65a39a176c5ccd71418272047e8cd3f1
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:30:14 +00:00
David B. Kinder 9561681773 doc: fix :file: references in application primer
fix :file: reference and add :ref: tag
to a mentioned sample

Change-Id: I46a66537b7cf7c89ba19e461f3a2872174cda33d
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:29:16 +00:00
David B. Kinder a3f6a468b6 doc: fix :file: reference to include file
fix :file: reference to include/misc/ring_buffer.h

Change-Id: I0d7b32150ef66757fb6e5328c0e1b1bc6b9f3e55
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-07 22:28:47 +00:00
Carles Cufi e710300916 doc: subsystems: bluetooth: Update controller features
Add a few bullet points on the capabilities of the BLE controller.

Change-Id: I4fa0098d31e87c6a13e8ae7c0e1a212e81bb2742
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-04-07 17:31:46 +00:00
Jukka Rissanen 38f1ba3c1f doc: Enhance IP stack overview documentation
Add more information to networking IP stack overview
documentation.

Change-Id: Ie179c4bf2a5716b9c85b4f8899fe61033510b90d
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-04-07 12:35:51 +03:00
Paul Sokolovsky a90ae56504 doc: kernel_event_logger: Update constant names to the current.
Change-Id: I31bae75b341c6cddc51681c6ef6e1aaf186970ff
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2017-04-06 22:40:50 +03:00
David B. Kinder fc123af51b doc: fix headings in release notes
Fix heading hierarchy in new per-release release notes docs.
Add label to release-notes.rst doc.
Tweak a heading that was picked up as a left-over git marker.

Change-Id: I3e0ec6e1a0c59b05b1a58a32b3484bbeb89cf0f0
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-04-05 14:35:39 -07:00
Johan Hedberg c283b1f94f doc: subsystems: bluetooth: Update feature list
Update the supported features list for Bluetooth.

Change-Id: I25f029106852794bcae1163ce1a1162d78c68d24
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-04-04 19:51:07 +00:00
Anas Nashif 81b4cc21ec doc: split release note documents
Change-Id: I7901157fa691f149394dd0c30654d43c2b0385ed
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-04-03 16:41:23 +00:00
Anas Nashif 03ca26fdeb doc: build json files from the documentation
Change-Id: I30db3a3f0d16cb929c74756a4d1bd8baf2ce8a11
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-04-03 16:41:23 +00:00
Paul Sokolovsky 291d4716ae docs: networking: Suggest to stop QEMU-related networking daemons.
If that's not done and user forgets that they still have TAP interface
active, it may lead to all kinds of address conflicts and routing
problems.

Change-Id: Ib7b64d5e7fcaf2695ff6693a0f0513d16b8907ad
Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2017-04-01 20:45:48 +00:00
David B. Kinder 9d0c020a9b doc: clean up blank lines in getting started docs
code blocks had unnecessary blank lines

Change-Id: I7fae271db0e7e975d717ccf7b0f7b686251405c0
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-03-27 15:34:07 -07:00
David B. Kinder c096453f34 doc: fix installation on windows instructions
Add more installation details for building zephyr on Windows
including what to do with the ISSM tar.gz file that's
downloaded, proxy settings if behind a firewall, adding tar
to the dependencies (needed to extract the ISSM tar.gz file),
linking to the downloads page for the ARM toolchain, and
fixing command lines to correctly use `make BOARD=`. Verified
instructions work on a Windows 10 system.

Change-Id: I04e5f8e46df7630868568b90388dc65bb9baa4c9
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-03-25 12:36:14 +00:00
Ricardo Salveti 4514e62cba doc: add dfu-util to Mac OS dependencies
Also recommend dfu-util on Mac OS, as it's the recommended flashing
method for Arduino 101 and 96Boards Carbon.

Change-Id: I91d5a8323330ee31cc2165336e4a0a7fdd23dbcf
Signed-off-by: Ricardo Salveti <ricardo.salveti@linaro.org>
2017-03-22 21:00:30 -03:00
Carles Cufi e4aa74125c doc: Fix minor issues in Windows installation guide
Minor fixes and cosmetic changes.

Change-Id: Ibf98f84934b523860adf27acc743fd1ec359e773
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-03-21 13:46:16 +00:00
Carles Cufi 6f422bae81 doc: Add MSYS2 to the Windows setup guide
Since MSYS2 is far more stable, reliable, maintained and easy
to set up than MinGW as a Windows development environment,
default to it for the official Windows Getting Started guide,
including instructions to compile for both x86 and ARM with it.

Change-Id: Iaba61498b3b16a8ee1edbff953de16c275282c7b
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-03-20 21:46:06 +00:00
David B. Kinder 3e20df33fc doc: Add 1.5 release notes to release-notes.rst
The only copy of the release notes for releases prior to 1.6 is on
the zephyrproject.org/downloads site.  Preserving the release notes
history in the git repo would be a good thing.  Here are the notes
for 1.5 (more to come).

Also added an auto table-of-contents header to make it easier to
navigate.

Change-Id: Ibd8b5a8d3816f7f5c376216adc2d52bb9467214d
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-03-18 23:34:18 +00:00
David B. Kinder 570ad1d328 doc: add example clarifing duration/period
A recent mailing list question asked for clarify about
the duration and period parameters for starting a timer.

Change-Id: I9bf8dd93dbbb9bbb94c95c2d7072f446ea1d6b01
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-03-18 23:33:20 +00:00
Patrice Buriez 5ae8c95389 doc: add dfu-util to Linux dependencies
Since we recommend using dfu-util to flash the Arduino 101 board,
it should be mentioned in the list of packages to be installed.
Also fix indentation.

Change-Id: Iafc053c1b07e79bd7d02059b46a842c25ebaaf64
Signed-off-by: Patrice Buriez <patrice.buriez@intel.com>
2017-03-14 23:36:29 +00:00
Anas Nashif 9d57a938ac doc: add 1.7.0 to the list of releases
Change-Id: I3e851e4d34e905601672e60ded50ed732c4c2a3c
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-03-11 17:31:13 +01:00
Anas Nashif b862addcf5 Zephyr 1.7.0 release notes
Change-Id: I806f00a905f800bf8ab7f35a1c68b75e2c660729
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-03-11 17:31:13 +01:00
David B. Kinder 137f207223 doc: Update getting started with Windows material
Update documentation on using a Windows host for doing Zephyr development
using ISSM toolchain and console commands in a mingw environment

Jira: ZEP-1177

Change-Id: I3e4edec26a430f424427734dfe407a185ace8434
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-03-10 15:19:17 +00:00
Anas Nashif c76c050bbd doc: board porting guide
Jira: ZEP-248

Change-Id: Iba83fceedc4fefe9d5319119f23cb392aca4c46a
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-03-08 10:35:01 +00:00
David B. Kinder 75d17fa3db doc: move IP porting guide to porting section
Move ip porting guide from the subsystem/networking section to the porting
section of the documentation.  Tweak the layout of the doc for improved
readable too.

Jira: ZEP-825

Change-Id: I688151f1da8862a783a82bcd4dde654c5178c30f
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-03-07 23:27:02 +00:00
Evan Couzens cc76bdff29 doc: Update Linux environment setup and supported OSes
Updated supported OSes to Fedora 25 and Ubuntu 16.04 LTS
Updated Zephyr SDK package name to reflect actual name
ZEP-1480

Change-Id: If7d79785009db8eb50028ff664ac7fc26eff79b5
Signed-off-by: Evan Couzens <evanx.couzens@intel.com>
2017-03-01 21:35:29 +00:00
David B. Kinder e86c503185 doc: allow table head and content to wrap
rtd theme prevents table headings and content from wrapping and can
cause tables to display to wide.  This patch overrides that CSS.

Change-Id: I4885b959a0dd075ff4c8edb9cfb4b17a611e6775
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-28 14:20:04 +00:00
David B. Kinder f5ea8fec37 doc: fix more spelling errors throughout docs
Change-Id: Ie76b51a3d0729159fa30c1fc9160b279d9f70b6c
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-28 13:22:13 +00:00
Inaky Perez-Gonzalez b2a20c366d doc: update link to 0.9 SDK
Don't need to have the user guess the URL.

Change-Id: Ifdad9c4d1034dc541b4a84999a12b4070a9130c0
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-02-28 12:50:28 +00:00
Anas Nashif c78a3485e2 Merge "Merge net branch into master" 2017-02-27 22:32:01 +00:00
David B. Kinder 23b54005e0 doc: fix spelling errors in doc/kernel documents
Change-Id: I879142a6c2da9d8ebd00c37ee57f1bf0f699dc78
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-27 11:46:53 -08:00
Jukka Rissanen 8523480ccf net: doc: Invalid config option for TCP
The qemu doc uses wrong config option for TCP support.

Change-Id: I87344b5af5ce687302e3a3305dd9b3297e171b0e
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-02-27 10:28:53 +02:00
Jukka Rissanen 3559516dc6 net: doc: Fix incorrect netcat note for qemu setup
If netcat is used with UDP, then one cannot press CTRL-c
as netcat returns immediately to the caller. For TCP the
CTRL-c is needed so move the note to TCP section of this
document.

Change-Id: I936a89e7a7ce8318602c3deae8513007a4620c80
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-02-27 10:28:53 +02:00
Benjamin Walsh 97f4a48182 doc: fix glaring typo in polling doc
Change-Id: I5e281d57cf8a9a7c9bf784f96b91d12988898a5f
Signed-off-by: Benjamin Walsh <walsh.benj@gmail.com>
2017-02-24 15:24:48 -05:00
Rishi Khare 62ed635119 frdm: fixed path and dependencies for extract_dts_includes.py
the existing Kbuild is missing the path and needed python script
has new dependencies on yaml package also split the long line shorter ones.

Change-Id: I34fdd2ff70b2d76b0e2af6f78f2980d20651b12d
Signed-off-by: Rishi Khare <rishi.khare@intel.com>
2017-02-22 13:57:52 +00:00
Benjamin Walsh 44d7cff207 doc: add polling API to the kernel primer
Change-Id: I17578f8350f1a26d2ecf8c0886c8e93078a2cdca
Signed-off-by: Benjamin Walsh <walsh.benj@gmail.com>
2017-02-20 15:35:44 +00:00
Benjamin Walsh e3f927bc11 doc: reorder sections in kernel/other
Put them in order where they are most likely to be useful.

Change-Id: Ia9c358a096556a9838b2b69311e10aba3b9ca587
Signed-off-by: Benjamin Walsh <walsh.benj@gmail.com>
2017-02-20 15:35:44 +00:00
Daniel Thompson 4d096a44a1 doc: Restore documentation for 'make outputexports'
Commit 7cb8a16c86 ("doc: restructure application primer") removed
the section documenting the build system support for third party
libraries. Restore this section making a few editorial changes to
ensure the text sits well in its surroundings.

Jira: ZEP-1733
Change-Id: Ie62b956732f36fac70b392eeee880acebaef6cf9
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
2017-02-18 15:17:07 +00:00
David B. Kinder d73d3aa901 doc: update glossary, remove from wiki
Promote a glossary.rst up into the doc/ folder, merge wiki
glossary entries (and remove from the wiki), and format use
the .. glossary directive to allow references by using the
:term: role (using :term:`ISR` will make a link to the
glossary entry for ISR)

Jira: ZEP-1321

Change-Id: Ie1461037ab456371604594488f01df9f21284561
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-18 11:19:06 +00:00
Andrew Boie 35fcb2736c arc: enable gen_isr_tables mechanism
Change-Id: I5897e110f554377796bfe38dd5c0f8652c29e5be
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-02-15 04:54:47 +00:00
David B. Kinder a023027f78 doc: update make clean to remove doxygen folder
Gerrit patch https://gerrit.zephyrproject.org/r/#/c/10849/
created a doxygen folder that make clean should remove

Change-Id: I5cd4dea489c868eef4f101c20cced3280b7abc39
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-09 23:52:02 +00:00
David Brown 53266a3836 doc: Fix encoding problem
Depending on the version of Python 3 the user has installed, 'open'
may default to using 'ascii' encoding.  Since the documentation is in
UTF-8, and contains characters beyond 'ascii', this will result in
failures when using these versions of Python.

Fix this by being explicit about the encoding to be used when reading
these files.

Signed-off-by: David Brown <david.brown@linaro.org>
Change-Id: I54c69334c6bf377f1135cec04f4e0ea96a8e9a5b
2017-02-09 23:37:44 +00:00
David B. Kinder 4031da8c92 doc: add permalinks to document headings
Permalinks make it much easier to create html links to specific sections
in a document (you over over the section heading and an icon appears that
you can click on to get a reference link directly to that section).

Change-Id: I905449158f834783b9df6c04bf5fa3e5f245b3fd
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-08 13:16:40 +00:00
Anas Nashif 1fdfc5dc2b doc: rename doxygen configuration file and build from doc/
Rename file to zephyr.doxyfile to allow integration in eclipse and make
it build locally in the doc/ directory without have to change to ../
first.

Change-Id: Ib2c4c26f385b050ea3d0e814ebfc3509f31e5e12
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-02-08 12:04:35 +00:00
Tomasz Bursztyka 85103e15de doc/net: Add L2 and device driver document
This one will quickly describe how the L2 concept fits into the network
stack, what is its role and how device drivers are then made.

Jira: ZEP-824

Change-Id: Ib5d49a5194fe4f67ad1196266ad09f40d732d5ee
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-02-08 10:12:36 +02:00
Jukka Rissanen bd3908b2a9 net: nbuf: Add timeout to net_buf getters
This commit changes the net_buf getter functions in nbuf.h
by adding a timeout parameter. These function prototypes
are changed to accept a timeout parameter.
	net_nbuf_get_rx()
	net_nbuf_get_tx()
	net_nbuf_get_data()
	net_nbuf_get_reserve_rx()
	net_nbuf_get_reserve_tx()
	net_nbuf_get_reserve_data()
	net_nbuf_copy()
	net_nbuf_copy_all()
	net_nbuf_push()
	net_nbuf_append()
	net_nbuf_write()
	net_nbuf_insert()

Following convinience functions have not been changed
	net_nbuf_append_u8
	net_nbuf_append_be16
	net_nbuf_append_be32
	net_nbuf_insert_u8
	net_nbuf_insert_be16
	net_nbuf_insert_be32
	net_nbuf_write_u8
	net_nbuf_write_be16
	net_nbuf_write_be32
so they call the base function using K_FOREVER. Use the
base function if you want to have a timeout when net_buf
is allocated.

Change-Id: I20bb602ffb73069e5a02668fce60575141586c0f
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-02-08 10:12:35 +02:00
David B. Kinder e23099bcc4 doc: add cross-references to hello_world sample
Change-Id: I23c4d361251251cce8887dd67be2e548f7365491
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-02-03 22:57:05 +00:00
Anas Nashif 57683bc01f doc: reference bluetooth section of Arduino 101
Change-Id: Ide11ac9e22c175603791c6a3b65a64fa12fe6d5c
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-02-03 17:55:04 +00:00
Anas Nashif 3c8000cca5 doc: net: restructure networking documentation
Change-Id: Ic5dd009f0e890fa152e92e6c96b6a76b4a3df5a9
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-02-03 15:59:19 +02:00
Anas Nashif f75462984f doc: update networking with Qemu section
Copy the documentation from the Wiki over here, the cross linking
between online documentation and Wiki and duplication of information was
inconsistent and confusing. Put everything in one place.

Change-Id: Ia3aaec1b431477e2ec54dbec2ccaa655870b0ee3
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-02-03 15:59:19 +02:00