Commit Graph

618 Commits

Author SHA1 Message Date
Henrik Brix Andersen
e1ad3b2ab3 doc: guides: tfm: fix documentation build
Fix the TF-M requirements documentation build.

Fixes: ee001fa4bb

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-12-08 13:25:38 -06:00
Martí Bolívar
fa41f4bb8f doc: update devicetree sections
Reflect the removal of BOARD.dts.pre.tmp in favor of zephyr.dts.pre in
SVG diagrams. Clean up adjacent text.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-12-07 13:39:37 -05:00
Jimmy Brisson
ee001fa4bb boards: Add mps3-an547-ns target; build mps3-an547 with TFM in secure mode
This includes a new device tree, new target yaml and new target
defconfig

Signed-off-by: Jimmy Brisson <jimmy.brisson@linaro.org>
2021-12-07 10:44:23 -06:00
Daniel Leung
38c42f69d2 doc: gdbstub: add a simple example
Adds a simple example to demonstrate how to use GDB stub.

Fixes #39415

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-12-06 20:55:32 -05:00
Henrik Brix Andersen
abbc89f026 boards: add support for integer board revisions
Add support for simple integer board revisions (1, 2, 3, ...).

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-12-01 13:53:30 -06:00
Daniel Leung
bdc812c15a doc: debug: expand documentation on gdbstub
This expands the documentation on GDB stub, and adding
hints on porting to new architectures.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-11-30 15:24:00 -05:00
Bartosz Bilas
554296c1e1 doc: west: build-flash-debug: fix cmake arg example
The shorter version of --cmake argument should contain one dash only.

Signed-off-by: Bartosz Bilas <bartosz.bilas@hotmail.com>
2021-11-22 23:04:30 -05:00
Øyvind Rønningstad
449cb60815 samples: Add TF-M sample for custom secure partitions
The sample implements a dummy ARoT (Application Root of Trust) partition
in TF-M and calls it from the app.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2021-11-22 22:19:41 -05:00
Dominik Ermel
e05c3d7a57 doc/guides/doc: Correct missed htmldocs
Correct missed htmldocs to html.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2021-11-22 11:19:38 -05:00
Tomasz Bursztyka
dd66bdadfa include/spi: Clarify spi_release() function behavior
It will unlock and unhold the CS line. Note that the lock and the CS
being hold on are 2 separate config bits, so if only one is selected
spi_release() will only apply on this configuration.

Note: this has been already the case in the controller drivers, where
there implementation of spi_release() calls
spi_context_unlock_unconditionally(). And that function always forces
the CS line to an inactive state.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2021-11-19 19:17:19 -05:00
Martí Bolívar
46de74b8de doc: dts: clear up DTC_OVERLAY_FILE
Make it clearer that you can set it explicitly or the build system
will try to set it for you, and try to make it clearer what the build
system is doing when it tries to set it on your behalf.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-11-17 11:14:11 -05:00
Torsten Rasmussen
1594cd38b2 doc: zephyr build process description
Updated the Zephyr build process description to include description of
all Zephyr link stages.

It extends the guide with description of the intermediate binaries as
well as the post-processing of those binaries.
- Unfixed size binary
- Fixed size binary

Post-processing
- Partition alignment
- ISR table generation

Build stages images has been updated and new images showing the
post-processing stages of the intermediate binaries has been added.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-11-16 10:41:59 +01:00
Gerard Marull-Paretas
ffebac6578 tracing: improve Doxygen structure
- Add tracing to the subsys group
- Use `subsys_tracing` "namespace"
- Some minor header style improvements

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-15 10:12:56 -05:00
Gerard Marull-Paretas
392a0bee31 doc: guides: pm: system: improve some sentences
Improve some sentences to make them easier to understand.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
a4d257f19b doc: guides: pm: device_runtime: new guide
Add a new and more extensive guide that describes the device runtime
API. It contains a brief introduction, API design principles and goals,
some example sequence diagrams and usage guidelines.

While the API still needs important additions, such a guide will
hopefully guide developers when trying to deal with device PM in Zephyr.

Note: sequence diagrams have been created using PlantUML (2021 version).
The rendered SVG diagrams embed the original code if they have to be
edited and re-rendered.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
40a94743a3 doc: guides: pm: device_runtime: remove outdated statement
The device runtime API does no longer use pm_device_state_set().

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
f28b57ff8d doc: guides: pm: system: fix DT bindings references
Use the :dtcompatible: role to refer to DT bindings.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
68db978fb2 doc: guides: pm: device_runtime: remove API definitions
The API is already rendered automatically by breathe, so do not manually
add definitions again.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
d1cb73a29c doc: guides: pm: device: remove API definitions
The API is already rendered automatically by breathe, so do not
duplicate it manually.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
51dfd38baa doc: guides: pm: system: simplify C references
- Remove duplicated information (e.g. enum list, available in the API
  docs)
- Use C domain to reference

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Gerard Marull-Paretas
4d6803383d doc: pm: split sections and move to guides
Splitted the PM reference document into smaller chunks (overview,
system, device and device_runtime). Moved this content to the guides
section, since the documentation intent is to provide general PM subsys
information and usage guidelines.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-13 07:59:51 -05:00
Joakim Andersson
ba85663a42 doc: Update TF-M documentation to match current TF-M version
Update TF-M documentation to match the current integrated TF-M version.
Include mention of the Platform secure partition that can be enabled.

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2021-11-12 14:51:22 +01:00
Gerard Marull-Paretas
2c3e12b597 doc: guides: smf: use graphviz extension
Diagrams were pre-rendered and code included at the end, however, it is
possible to use the Graphviz extension to render them directly. The
advantage is that diagrams follow pre-defined defaults, making them
consistent with the documentation style.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-10 13:54:46 -05:00
Torsten Rasmussen
1198087440 cmake: APPLICATION_CONFIG_DIR support implemented
With this commit a dedicated APPLICATION_CONFIG_DIR is added to the
Zephyr build system.

Currently, the APPLICATION_SOURCE_DIR is identical also the base
location of configuration files.

This is very practical for simple samples, but also has it limitations
for more complex setups.

Introducing a dedicated APPLICATION_CONFIG_DIR allows users more
customization options in Zephyr build system.
Especially in terms of custom build configuration files unknown to
Zephyr itself.

For example, instead of all configuration files being located directly
in the application source folder, a project might prefer to organize
their configuration files on a per board basis, for example:
<app>/boards/custom_board_A/prj.conf
<app>/boards/custom_board_A/app.overlay
<app>/boards/custom_board_A/custom_file.mine
<app>/boards/custom_board_B/prj.conf
<app>/boards/custom_board_B/app.overlay
<app>/boards/custom_board_B/custom_file.mine
...

instead of n-files located in the root of the sample.

If the user / sample specifies APPLICATION_CONFIG_DIR, then this folder
will always be used instead of the default configuration folder.

As part of this extension the behaviour of
`-DCONF_FILE=<relative-path>/prj_<build>.conf` and additional Kconfig
fragments automatic sourcing has been aligned with the default behavior
of `prj.conf`.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-11-10 08:25:36 -05:00
Neil Armstrong
1fb263c9ba doc: document ranges generated macros in macros.bnf
This adds the DT ranges generated macros in the ABNF grammar file.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2021-11-10 08:23:00 -05:00
Gerard Marull-Paretas
f6bff715a9 doc: guides: pinctrl: fix DT sample code
Pre-defined nodes need to be children of the pin controller device.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-11-09 11:05:51 +01:00
Nikolai Kondrashov
194aa431c2 doc: bluetooth: Clarify BLE HW reqs are for Nordic
Make it clearer that the listed BLE controller hardware/peripheral
requirements concern the Nordic Semiconductor implementation only,
in the Bluetooth guide.

Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
2021-11-08 10:41:26 +01:00
Martí Bolívar
1ca60ab35f doc: dts: document multi-line property description policy
Document our policy regarding multi-line strings in devicetree
bindings which has been enforced starting with this PR:

https://github.com/zephyrproject-rtos/zephyr/pull/36189

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-11-07 05:35:21 -05:00
Sylvio Alves
1bd54d6f11 docs: remove deprecated I2C references
As from this PR, Zephyr has no I2C_X references
and this notes presented in the documentation
can be removed.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2021-11-05 14:07:09 -04:00
Martí Bolívar
612409d39d doc: west 0.12 docs
Update the documentation for this release.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-11-04 19:30:42 -04:00
Martí Bolívar
ffa0c52552 doc: cmake package: remove stale cmake version lines
This page is meant to document the behavior of the Zephyr cmake
package. However, its example CMake snippets contain some stale
references to a minimum version (3.13.1, now 3.20).

These lines are a bit of a distraction anyway, so just remove them.
They matter in general, but they don't matter where the Zephyr cmake
package is concerned.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-11-04 12:09:58 +01:00
Nikolai Kondrashov
6d6c441069 doc: bluetooth: List BLE controller HW reqs
Add a list of hardware/peripheral requirements of the BLE controller.

Co-authored-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
2021-11-02 10:46:00 +01:00
Nikolai Kondrashov
1b4e364977 doc: bluetooth: Spell out BLE per Bluetooth SIG
Spell out BLE fully in the Bluetooth Architecture guide, since Bluetooth
SIG does not use the abbreviation.

Co-authored-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
2021-11-02 10:46:00 +01:00
Nikolai Kondrashov
6609a75f78 doc: bluetooth: Hyphenate adjectives before nouns
Hyphenate multi-word adjectives (compound modifiers) before nouns on the
Bluetooth Architecture guide page. This makes the sentence a little
easier to read.

Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
2021-11-02 10:46:00 +01:00
Joakim Andersson
dda3a5ad0d modules: tfm: Split trusted-firmware-m repository
Split the zephyr project maintained repository trusted-firmware-m into
forks of the individual upstream repositories.

https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git
Upstream: TF-Mv1.4.1
Additions:
zephyr: module: Add zephyr module file
trusted-firmware-m: platform: lpcxpresso55s69: Update SDK

https://git.trustedfirmware.org/TF-M/tf-m-tests.git
Upstream: 51ff2bdfae043f6dd0813b000d928c4bda172660
Additions:
zephyr: module: Add module file for tf-m-tests

https://github.com/ARM-software/psa-arch-tests.git
Upstream: 60faad2ead1b967ec8e73accd793d3ed0e5c56bd
Additions:
zephyr: module: Add module file for psa-arch-tests
psa-arch-tests: Allow overriding of toolchain file

The organization of folders remain the same with the following
exceptions:
Moved:
root folder moved from modules/tee/tfm to modules/tee/tf-m to avoid
problems with west update.
zephyr/module.yml to trusted-firmware-m/zephyr/module.yml and
${ZEPHYR_TRUSTED_FIRMWARE_M_MODULE_DIR} points to what was previously
${ZEPHYR_TRUSTED_FIRMWARE_M_MODULE_DIR}/trusted-firmware-m.
Added:
psa-arch-tests/zephyr/module.yml and ${ZEPHYR_PSA_ARCH_TESTS_MODULE_DIR}
tf-m-tests/zephyr/module/ and ${ZEPHYR_TF_M_TESTS_MODULE_DIR}
Removed:
init-git.sh
README.rst

Fixes: #39353

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2021-11-01 11:20:06 -04:00
Joakim Andersson
8c09cd374f modules: trusted-firmware-m: Use module location variable for .pem keys
Use the zephyr module dir variable for the trusted-firmware-m root
folder. Update documentation to TF-M documentation in
tfm-secure-boot.rst.

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2021-11-01 11:20:06 -04:00
Gerard Marull-Paretas
33380d7cc6 doc: guides: test: ztest: fix Sphinx usage
Sphinx was not used properly in a few places:

- Usage of single ` for literals
- Incomplete C domain references (missing :c:)

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-10-29 10:11:35 -04:00
Yuval Peress
5a39a73c4e doc: ztest: Update documentation for register
Add documentation that details the ability to register test suites and
execute them based on a pragma function. Also the auto-generated
test_main() function.

Signed-off-by: Yuval Peress <peress@chromium.org>
2021-10-28 16:57:51 -04:00
Gerard Marull-Paretas
3486fd831e doc: guides: add pinctrl guide
Add a user guide that provides general concepts on pin control, details
on Zephyr model, implementation guidelines, etc.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-10-25 15:26:47 -05:00
Martí Bolívar
8882467b53 dts: rules for bindings
Capture some general rules for writing bindings that we've been
enforcing in review but could use better documentation for.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-10-20 07:21:39 -04:00
Dennis Ruffer
c714c78743 twister: Allow baud rates other than 115200
Fixes #38046
Document the changes in twister.rst
Add baud rate to debug message in twister
Add baud parameter to twister's add_device function
Set the twister baud rate from input parameters
Use 115200 as the default baud rate if not specified
Add baud to the hwmap-schema.yaml file
Add --device-serial-baud to twister arguments
Fix compliance issues
Fix mistake in parameter name from device-baud to device-serial-baud
Refactoring of the code in orded to simplify the logic
   and clear multiple definitions of the default baud rate.

Signed-off-by: Maciej Perkowski <Maciej.Perkowski@nordicsemi.no>
Signed-off-by: Dennis Ruffer <daruffer@gmail.com>
2021-10-14 16:35:48 -04:00
Carlo Caione
42105ed882 dts: Add support for specifier-space property.
Currently all the *-names and *-cells properties are derived from the
name of the base <name>s property. This is a limitation because:

- It forces the base property name to be plural ending in -s
- It doesn't allow the english exception of plural words ending in -es

With this patch we add one additional property 'specifier-space' that
can be used to explicitly specify the base property name.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Suggested-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-10-13 09:56:46 -05:00
Martí Bolívar
397edd1e01 doc: autopts-linux: fix GSG reference
Commit 3f6737f688
("doc: autopts: Remove duplication of getting started guide") removed
duplicated text by linking to the getting started guide.

However, the link format is not correct. It is using a link to the
latest upstream Zephyr getting started guide. This has two problems:

  1. It will link to the wrong document when the autopts guide
     is part of an official release documentation. For example,
     the Zephyr 3.0 release documentation HTML page for these
     docs will be linking to the main branch GSG, not the v3.0
     getting started guide. This combination will not be correct
     in general because dependencies change.

  2. It breaks downstream distributions which bundle their own
     versions of the Zephyr documentation as well, for similar
     reasons.

The two documents are part of the same Sphinx docset, so the right way
to do this is with :ref. Fix it.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-10-13 06:16:24 -04:00
Magdalena Kasenberg
3f6737f688 doc: autopts: Remove duplication of getting started guide
and highlight only the differences in setup instead.

Signed-off-by: Magdalena Kasenberg <magdalena.kasenberg@codecoup.pl>
2021-10-07 15:43:03 -04:00
Martí Bolívar
650f8fc743 doc: document new submanifests folder
Add a reference to the README and the folder itself from the modules
page. This is a more permanent alternative to using
ZEPHYR_EXTRA_MODULES for west users, so it logically belongs here.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-10-07 13:45:42 +02:00
Benedikt Schmidt
6e7f93a5a3 docs: Improve documentation of bootloader usage
Describes the necessity to specify the code partition as the chosen one.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2021-10-06 09:28:28 -04:00
Evgeniy Paltsev
b465a72244 DOC: ARC: update arc status page
We support ARCv3 HS6x SMP systems now - let's update the
status in the documentation.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2021-10-06 09:26:57 -04:00
Sam Hurst
cb4785542e lib: smf: Add State Machine Framework
Add an application agnostic State Machine Framework library to
Zephyr that provides an easy way for developers to integrate
state machines into their application.

Twister passed:
twister -T tests/lib/smf/

Signed-off-by: Sam Hurst <sbh1187@gmail.com>
2021-10-04 20:33:11 -04:00
Torsten Rasmussen
0455d268df devicetree: remove support for DTC_OVERLAY_FILE in environment
Setting of DTC_OVERLAY_FILE as an environment setting was deprecated
before Zephyr 1.14 LTS.

This commit remove the support for this possibility and thus cleans up
the build system.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-10-01 14:42:42 -04:00
Aleksander Wasaznik
fbe7699c82 Bluetooth: Host: Doc fixup for rename of BT_SECURITY_L*
BT_SECURITY_LOW and etc. were previously renamed and are no longer
valid.

The original rename is in the following commits:
1c48757d94 (New names, deprecate old)
5f2a9ba8e4 (Remove deprecated names)

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemiconductor.no>
2021-09-13 11:56:21 -04:00