Commit Graph

92 Commits

Author SHA1 Message Date
Sam Hurst 76730da1a2 doc: add API documentation for USB-C VBUS Driver
This commit adds the USB-C driver API documentation in peripherals section
of the reference guide. The USB-C VBUS API is declared experimental.

Signed-off-by: Sam Hurst <sbh1187@gmail.com>
2022-10-22 18:38:35 -04:00
Sam Hurst 0d68ebc52c doc: Document the USB-C Subsystem
Documents the USB-C Subsystem API.

Signed-off-by: Sam Hurst <sbh1187@gmail.com>
2022-10-22 18:38:35 -04:00
Stephanos Ioannidis 28b22b276a lib: libc: newlib: Make newlib nano variant optional
The newlib nano variant is currently enabled by default when
`CONFIG_NEWLIB_LIBC=y` and the selected toolchain-architecture
combination includes the newlib nano variant support, even if
`CONFIG_NEWLIB_LIBC_NANO` is not selected by the user.

When `CONFIG_NEWLIB_LIBC=y`, this results in the newlib nano variant
being selected for some architectures (e.g. ARC, ARM and RISC-V), while
the full variant is selected for the rest of the architectures.

The above behaviour is problematic because there exist functional
differences between the newlib full and nano variants (e.g. C99 format
modifiers such as `hh`, `ll`, `z`, `j` and `t` are not available in the
newlib nano variant), and this effectively leads to different level of
C standard support across different architectures when
`CONFIG_NEWLIB_LIBC=y`.

This commit fixes this problem by making the `CONFIG_NEWLIB_LIBC_NANO`
not `default y` and requiring its user to explicitly set this symbol to
`y` when they want to use the newlib nano variant.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-10-19 16:02:51 +02:00
Manuel Arguelles 31b3993d58 scripts: west: introduce Lauterbach TRACE32 runner
This patch introduces a West runner for flashing and debugging with
Lauterbach TRACE32 debuggers. The runner consists of a wrapper around
TRACE32 software, and allows a Zephyr board to execute a custom start-up
script (Practice Script) for the different commands supported, including
the ability to pass extra arguments from CMake. Is up to the board using
this runner to define the actions performed on each command.

The `debug` command launches TRACE32 GUI to allow debug the Zephyr
application, while the `flash` command hides the GUI and executes the
start-up script in a background process.

Signed-off-by: Manuel Arguelles <manuel.arguelles@nxp.com>
2022-10-14 09:51:14 +02:00
Stephanos Ioannidis 88af5964ed doc: Update to Zephyr SDK 0.15.1
Update the Getting Started Guide and the Zephyr SDK documentation to
point to the Zephyr SDK 0.15.1 release.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-12 19:23:32 -04:00
Cong Nguyen Huu 708fee8f61 doc: develop: test: update twister guide
add run steps guide for windows

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2022-10-06 07:23:17 -04:00
Daniel DeGrasse 50c7341070 doc: test: add documentation for twister sysbuild flag
Add sysbuild flag to twister supported options, with documentation on
how Kconfig and devicetree will be parsed

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-10-04 14:06:58 -04:00
Stephanos Ioannidis a041f5ce10 doc: toolchains: Update custom toolchain CMake reference file names
This commit updates the CMake reference file names for custom
toolchains.

The contents of `cmake/generic_toolchain.cmake` and
`cmake/target_toolchain.cmake` were moved
`cmake/modules/FindHostTools.cmake` and
`cmake/modules/FindTargetTools.cmake`, respectively.

Refer to the commit 8d2998d4f9 and
7131d02fa4 for more details.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis cf400c6c63 doc: flash_debug: Update OpenOCD and pyOCD links
This commit updates the outdated links for OpenOCD and pyOCD.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis d85900d0f7 doc: west: Update outdated link to SPDX specification
This commit updates the outdated link to the SPDX specification.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis 9f5ad65446 doc: tools: coccinelle: Update documentation link
This commit updates the oudated link to the Cocinelle documentation.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis 97efbec18b doc: test: Update link to Sparse documentation
Update the Sparse documentation to refer to the official Sparse
documentation instead of some random link, which no longeer works.

It also fixes an incorrect inline literal usage.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis 45a8ace1f3 doc: Use inline literals
Use inline literals where applicable -- especially for the words that
contain `@`; otherwise, Sphinx will think it is an email address.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Øyvind Rønningstad b96453f653 doc: manifest.rst: Describe using 'revision: HEAD~0' in manifests
Describe that using 'HEAD~0' as the revision in manifest files will
cause west to not touch that project.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2022-09-27 19:30:01 -07:00
Fabio Baltieri a2ba6cd0ee doc: api: update overview page
Update the API overview page, guessing based on gitk v3.1.0..main on the
various API headers.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-09-26 09:53:05 -05:00
Stephanos Ioannidis 81de0276fc doc: languages: c: Add formatted output section
This commit adds "Formatted Output" section to the "C Language Support"
documentation that describes the C library-specific formatted output
support details.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-09-21 12:37:04 +02:00
Andrei Emeltchenko beeecfdebf doc: Remove double code block anchor
Make code look consistent with other code blocks and remove
double block anchor. Leave code-block to have proper syntax
highlighting.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2022-09-19 18:23:17 +02:00
Daniel Leung 16b22fa46a doc: i3c: add a few bits about the new I3C API
This adds a fews bits about the newly introduced I3C API
for I3C controller.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-09-09 17:42:33 -04:00
Carles Cufi 451dffe5ac doc: west: Document the 'west completion' command
This extension command was not documented yet, add it to the
corresponding page.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-09-06 08:43:15 -07:00
Gregory SHUE 6c66905e8d doc: modules: document recommendations
Update Modules (External projects) documentation to:

- Recommend explicitly setting the module name in module.yml
- Recommend exposing module-provided headers with an include
  pathname beginning with the module-name.

Fixes #49766

Signed-off-by: Gregory SHUE <gregory.shue@legrand.com>
Co-authored-by: Stephanos Ioannidis <root@stephanos.io>
2022-09-05 14:54:07 +00:00
Martí Bolívar 1261a9eb88 doc: application development: update example-application text
The application now supports a custom west extension; mention that.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-08-31 17:29:43 +02:00
Daniel DeGrasse f1bafda5e5 docs: getting_started: add note about west boards command
Add note about west boards command to getting started documentation,
to make it easier for users to determine the name of their board when used
with west. Also change "-p auto" to "-p always" in the build step, since
this is more deterministic

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-08-30 16:44:23 +02:00
Daniel DeGrasse e1bcc0a0cc docs: getting_started: change default python setup to use virtual env
Change default python setup suggested in getting started guide to use
virtual environments. This aligns with the documentation itself, which
suggests that users use virtual environments with Zephyr. The Windows
python setup is also updated with the correct command to create a
virtual environment, as "python3" is not a defined executable in a
windows commandline after installing python with chocolatey

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-08-30 16:44:23 +02:00
Stephanos Ioannidis d9929556b3 doc: Update to Zephyr SDK 0.15.0
Update the Getting Started Guide and the Zephyr SDK documentation to
point to the Zephyr SDK 0.15.0 release.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-08-29 16:57:18 +02:00
Martí Bolívar f3fdfa3ff5 doc: west v0.14 release notes
Document this bug fix release.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-08-29 16:54:53 +02:00
Diego Herranz 66d47cae04 doc/develop/getting_started: update for Ubuntu 22.04
In Ubuntu 22.04 there is no need to add any extra repositories
to meet the minimum required versions for tools like cmake and dtc.
In fact, the Kitware repos don't even work in Ubuntu 22.04.

So, instructions updated to explain that step is only required for
Ubuntu versions older than 22.04.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2022-08-25 23:39:23 -07:00
Carles Cufi 80b4df8839 blobs: Document the submission process
Add the missing piece of documentation for binary blobs: the submission
process. This follows the external source code process relatively close,
but it is relatively simpler.

The proposal includes a new issue template for requesting inclusion of
blob(s) for a particular module.

Fixes #7516.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-08-25 11:10:53 -04:00
Carles Cufi 7743b6da85 doc: Require Python 3.8
Given that 3.6 is now several years old and the current and previous
 Ubuntu LTS ship with 3.8 or later, upgrade the minimum required Python
version from 3.6 to 3.8.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-08-24 18:35:57 +02:00
Gerard Marull-Paretas cd739a9757 doc: fix incorrect usage of envvar role
:envvar: is currently used to tag environment variables, however,
:envvar: role expects a matching .. envvar:: directive where the
environment variable is defined. This patch fixes some cases by adding
envvar directives and by converting certain cases to literals (it
doesn't make sense to document all env vars in a list, as some are
self-documented by contextual information).

Ref. https://www.sphinx-doc.org/en/master/usage/restructuredtext/
roles.html#role-envvar

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-23 10:15:34 +02:00
Martí Bolívar f6416681ca doc: west: mention west blobs in without-west.rst
This page is out of date now that we have blobs infrastructure managed
by west blobs. We need to tell users that they are on their own when
it comes to building applications that require blobs if they aren't
using west.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-08-22 16:37:07 +00:00
Martí Bolívar 16d681c2ef doc: blobs: fixes and tweaks
From a user perspective, it doesn't really matter that west blobs is
an extension. And again from a user perspective, the fact that the
command is called "blobs" is much more important than knowing that
it's an extension. Similarly, the fact that we host it in zephyr and
why isn't super relevant.

Re-work the docs so that we refer to the command as "west blobs"
instead of "a/the west extension" or "west", for ease of reading.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-08-22 16:37:07 +00:00
Carles Cufi 0b3564e36d blobs: Document the command and the module integration
Extend the existing documentation by documenting the command itself and
the format of the module.yml blobs section.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-08-18 15:25:43 +00:00
Torsten Rasmussen 5fa4156462 doc: sysbuild documentation guide
This is this initial sysbuild guide on what sysbuild is and how to build
a sample using sysbuild.

It provides an architectural overview of sysbuild.
Descriptions on how to use `west build` or `cmake` + `ninja` to build
projects with the sysbuild infrastructure.

Flashing is described through the use of `west flash`.

Extending sysbuild with additional Zephyr based applications are
described, and reference to CMake documentation for including non-Zephyr
based applications are provided.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-08-12 13:56:55 +02:00
Gerard Marull-Paretas b2520b09a7 devicetree: drop support for dts_fixup.h files
Devicetree fixup files existed previous to the current stable Devicetree
API. While they served their purpose, they are no longer necessary nor
used in-tree. This patch drops support for this legacy feature.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-11 12:17:02 +02:00
Yuval Peress 84dfb8edf8 ztest: allow asserts anywhere
Updates the ztest_test_fail() function to allow failures in setup.
When executed, a failed assert will fail every test in the suite owning
the setup function. This was verified by adding a suite which asserts
in the setup function and has a test that should pass. During
exeuction, ztest marks the test as failing.

In order to verify exection I also added 2 new APIs:
- ZTEST_EXPECT_FAIL(suite_name, test_name)
- ZTEST_EXPECT_SKIP(suite_name, test_name)

Signed-off-by: Yuval Peress <peress@google.com>
2022-08-09 13:30:15 -04:00
Chen Peng1 7f105cea87 twister: support board@revision in platform filter
support to use board@revision as platform filter when running
twister, like "twister -p nucleo_f030r8@1 ...".

Signed-off-by: Chen Peng1 <peng1.chen@intel.com>
2022-08-09 08:45:55 -04:00
Fabio Baltieri def230187b test: fix more legacy #include paths
Add a bunch of missing "zephyr/" prefixes to #include statements in
various test and test framework files.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-08-02 16:41:41 +01:00
Nikolai Kondrashov 6cee447a15 doc: Fix a couple typos
Fix a couple small typos in docs.

Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
2022-08-01 18:04:02 +01:00
Al Semjonovs dd38c20007 ztest: Update documentation to use ztest_run_all in example
Update custom test_main example to use updated ZTEST API so
test can either be listed or ran appropriately.

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2022-07-28 16:43:07 -04:00
Fabio Baltieri 56ab3a74e4 doc: drop few reference of -s west build flag
This has been removed in:

b710177a27 west: commands: build: Specify source dir without a flag

and hidden from the help, drop it from the documents to avoid confusion.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-07-20 09:41:32 -05:00
Yuval Peress b513e621b0 docs: ztest: Update documentation for new API
Documentation now includes:
- How to create a test suite
- How to use predicates
- How to use setup/before/after/teardown
- How to use test rules
- Direct people to use FFF instead of ztest mock

Fixes #47420

Signed-off-by: Yuval Peress <peress@google.com>
2022-07-15 22:25:41 +00:00
Grzegorz Ferenc 5b108be3d1 doc: gsg: Edit instructions to set SDK env vars
Edited the changes added in commit 0a758c3.
The changes aim at including the variable info
in a note before the OS installation procedure for major visibility.
Also added subsections on zephyr_sdk.rst page.

Signed-off-by: Grzegorz Ferenc <Grzegorz.Ferenc@nordicsemi.no>
2022-07-06 08:25:44 -07:00
Thomas Stranger cbd79250e3 doc: add api documentation for w1 driver
This commit adds the w1 driver API documentation in peripherals section
of the reference guide.
The 1-Wire API is declared as unstable in the API overview.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2022-07-05 23:06:45 +02:00
Yuval Peress e9e030f56b ztest: Add zassume* API
Add an assume API which works like JUnit's. Assumptions can be made
at any point before your test returns (setup, before, and during the
test). If an assumption fails, the test will be marked as skipped.

This helps avoid a cascading affect of failed tests when a base
feature breaks. The feature is expected to have tests and the tests
which depend on it should be skipped (not failed) if that feature
is broken.

Issue #42472

Signed-off-by: Yuval Peress <peress@google.com>
2022-07-04 14:16:34 -04:00
Carles Cufi f9739ab41d python: Fix the requirement for libmagic to be installed
The Python python-magic module that we install for compliance checks
requires libmagic to be installed on the system to work. This requires
extra OS packages on Ubuntu and macOS, and an extra wheel on Windows.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-06-30 13:34:26 +02:00
Tom Burdick 63478be651 docs: Update i2c API modified version to 3.2
Updates the API overview page describing that the i2c API has been modified
for 3.2.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-06-29 17:51:31 +02:00
Tom Burdick 88ca215eed i2c: Update API terminology
Updates the API and types to match updated I2C terminology. Replaces master
with controller and slave with target.

Updates all drivers to match the changed macros, types, and API signatures.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-06-29 17:51:31 +02:00
Tom Burdick 215bfa249e docs: rtio: Add RTIO API to the API Overview Doc
Notes that the API is currently experimental, and is targetting
being added initially for 3.2.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-06-28 13:53:13 -04:00
Al Semjonovs 92bc3e47c0 ztest: Test selection documentation.
Explain usage of the `-test` command line argument for
posix builds.

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2022-06-15 18:06:54 -04:00
Carles Cufi 26294ced09 doc: Rename API meeting to Architecture meeting
As per the decision to rename this meeting and make it into a working
group, document this in the official docs.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-06-14 16:07:38 +02:00