Commit Graph

2888 Commits

Author SHA1 Message Date
Martí Bolívar
3df5f4003c doc: dts: update design goals document
Some information on design goals can be updated:

- we have decided against code generation for the time being
- we can do pin muxing via devicetree (this requires soc.dtsi
  support, but the necessary devicetree infrastructure exists)

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-22 07:48:21 -05:00
Andrew Boie
4abc38b342 doc: usermode: stack access policy change
The current policy of always excluding stacks that aren't
owned by the current thread only works well on MPU systems,
where it is very fast to have a reserved MPU region corresponding
to the stack buffer of the current thread.

This unfortunately is not efficient on MMU-based systems, it
would require either a different set of page tables per thread
or an expensive page table update on context switch.

This PR relaxes the documented policy to leave it up to the
implementation whether threads that all belong to the same
memory domain can see each other's stacks.

There's lots of precedent for this, for example on Linux threads
in the same process can all access each other's stacks.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2020-10-21 10:20:23 -07:00
Kumar Gala
f80f31eb0d ci: github: reduce when we do doc builds
Rather than doing a doc build on every PR, limit it to PRs that either
touch a file in doc/, *.rst and what's listed as DOXY_SOURCES in
doc/CMakeLists.txt.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-10-21 17:40:52 +02:00
Kumar Gala
b6b7e4c770 arm: v2m_musca: Mark Musca-A board support deprecated for 2.6.0
Deprecate the Musca-A board and SoC support to be removed in 2.6.0.
There are a number of issues with the Musca-A and there exists both the
Musca-B and Musca-S1.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-10-21 07:23:22 -05:00
Marc Herbert
c1f6c7d19e doc: extract_content.py: support multiple build directories
Exclude (other) build directories with a CMakeCache.txt file as they
typically contain previous output from ourselves.

One key feature of 'out of source" builds offered by CMake is allowing
multiple build directories. For instance to build different
configurations without starting from scratch. Unfortunately, the
extract_content.py code had a severe issue with multiple build
directories with an interesting effect on build times, see simple
reproduction below:

cd doc/
cmake -B _build/
cmake -B _b2

 # Repeat these a couple times
make -C _build content
make -C _b2 content

find -name rst
./_b2/rst
./_b2/rst/doc/_build/rst
./_b2/rst/doc/_build/rst/doc/_b2/rst
./_b2/rst/doc/_build/rst/doc/_b2/rst/doc/_build/rst

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2020-10-21 06:27:22 -05:00
Marc Herbert
e3c50af3e6 doc: restore sphinx-html and sphinx-latex shortcuts
Fixes commit 15fbf707ca ("doc: revert to copy files with
extract_content.py directly") that removed (2 years ago!) the definition
of EXTRACT_CONTENT_OUTPUTS while leaving it in use by sphinx-html and
sphinx-latex.

On my Linux box "make sphinx-html" is more than 5 times faster than
"htmldocs", likely because it does not build doxygen nor kconfig.

Also add missing WORKING_DIRECTORY for consistency with regular
targets and to fix this error:

Exception occurred:
  File "~/.local/lib/python3.8/site-packages/sphinx/
                   search/__init__.py", line 284, in __init__
    with open(scoring, 'rb') as fp:
FileNotFoundError: [Errno 2] No such file or directory: 'scorer.js'

I don't know when that second regression appeared.

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2020-10-20 11:05:41 -04:00
Anas Nashif
5d0cf010e2 doc: use latest label instead of version in docs
Instead of having a .99 version, use latest and link to the lates
documentation on the left side bar.

The version number has been confusing users where it was difficult to
determine if they were looking at the development tree or some released
version.

Fixes #24453

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-10-19 11:52:40 -04:00
Ioannis Glaropoulos
4932925fde doc: modules: rework content describing submitting changes to modules
We rework the titles and headers of the section where we
describe the process for submitting new module and changes
to existing modules. Move the 'requirements' section at the
top of the page.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
07d61350e9 doc: modules: move building with modules into own child section
We move the section about how to build Zephyr and integrate
with modules into its own section with title
'Integrate modules in Zephyr build system'.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
7b4ce3a442 doc: modules: document synchronization practices in module repos
In the module documentation page, add a section to describe
the requirements and the allowed practices for synchronizing
the module code base with the upstream project.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
0362c70142 doc: modules: document Testing and Documentation and module removal
In the module documentation page, add sections for
Testing and Documentation requirements. Add also a
section decribing polices for module deprecation and
removal.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
28e674b32e doc: modules: initial text about licensing policies in modules
Adding content to describe policies and requirements
around licensing in Zephyr modules.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
cc60180299 doc: modules: add text about contribution workflow
Add a section that summarizes the recommended
contribution workflow in zephyr modules.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
04cdfccdb9 doc: modules: define the individual roles for zephyr modules
Submit a paragraph that summarizes the different
individual roles in Zephyr module repositories.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Ioannis Glaropoulos
4fac732eae doc: modules: Introductory text about module candidates
Capture the discussion regarding which external projects
should be considered as candidates for zephyr modules.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-19 17:51:19 +02:00
Henrik Brix Andersen
6187c8b8df devicetree: rename header to reflect that io-channels are not ADC-only
Rename the devicetree/adc.h header file to devicetree/io-channels.h to
reflect that io-channels are used for both ADC and DAC devicetree
phandles.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2020-10-19 17:21:33 +02:00
Martí Bolívar
7e64fba9ed doc: dts: macros.bnf comment improvements
Comment updates and cleanups, cosmetic changes.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-17 10:46:00 -05:00
Martí Bolívar
13893af651 doc: dts: fix typo in macros.bnf
The fixed-partitions label -> node mapping macro bit is missing an
underscore.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-17 10:46:00 -05:00
Ioannis Glaropoulos
38dd4683c6 doc: add HW stack protection enabling in the board porting guidelines
Mention in the board porting guidelines the recommendation
to enable by default the HW Stack Protection feature, and
the rationale behind it.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-10-15 09:55:01 -05:00
Martí Bolívar
25c07e2ad7 doc: document devicetree.h dependency ordinal APIs
Hide these away in the reference documentation for now. It seems
rather unlikely that they'll be used by anything other than internal
infrastructure to get started with.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-14 13:18:44 -05:00
Martí Bolívar
305379e944 devicetree: add first round of dependency ordinal info
Add the first API functions that directly deal with node dependency
ordinals as determined by edtlib:

- DT_DEP_ORD(node_id): node_id's ordinal
- DT_REQUIRES_DEP_ORDS(node_id): list of dep ordinals for node_id's
  direct dependencies
- DT_SUPPORTS_DEP_ORDS(node_id): list of dep ordinals for nodes
  depending directly on node_id
- DT_INST_ equivalents

This is not meant to be an exhaustive set of macros related to
dependency ordinals; rather, it's a starting out point meant to enable
initial struct device dependency tracking work. We can add more if
needed.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-14 13:18:44 -05:00
Krzysztof Chruscinski
61f710b47c doc: release-notes: Add note about clock control API change
Added note about change in clock_control_async_on

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-10-14 14:06:56 +02:00
Jukka Rissanen
accaab2112 net: shell: Add network mgmt events monitor support
Add "net events [on|off]" command that can be used to monitor
the generated network management events.

The monitor output looks like this when enabled:

EVENT: L2 [1] up
EVENT: L3 [1] IPv6 mcast address add ff02::1:ff00:1
EVENT: L3 [1] IPv6 mcast join ff02::1:ff00:1
EVENT: L3 [1] IPv6 address add 2001:db8::1
EVENT: L4 [1] connected
EVENT: L3 [1] IPv6 prefix add 2002:5b9b:41a0::
EVENT: L3 [1] IPv6 address add 2002:5b9b:41a0:0:fec2:3dff:fe11:c147
EVENT: L3 [1] IPv6 neighbor add fe80::9ec7:a6ff:fe5e:4735
EVENT: L3 [1] IPv6 router add fe80::9ec7:a6ff:fe5e:4735
EVENT: L3 [1] IPv6 DAD ok fe80::fec2:3dff:fe11:c147
EVENT: L3 [1] IPv6 DAD ok 2001:db8::1
EVENT: L3 [1] IPv6 DAD ok 2002:5b9b:41a0:0:fec2:3dff:fe11:c147
EVENT: L3 [1] IPv4 address add 192.168.1.69
EVENT: L3 [1] DHCPv4 bound 192.168.1.69

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-10-13 13:42:50 +03:00
Marc Herbert
20c7ec4ad5 doc: west: add inline comments in the tree and manifest examples
It's great to have full manifest examples that can actually work as they
are, however the number of lines can "dilute" the feature currently
described and distract from it. Add some comments in the manifests to
highlight the current topic(s).

The file tree examples and their descriptions are carefully made up and
generally excellent, however I found my eyes going constantly back and
forth between the two in order to match them with one another and build
the actual, graphical representation in my head. These new comments
attached to the major elements of the trees will IMHO accelerate that
visual representation. What I found especially lacking: clues about
which directories are .git/ clones; a pity in the pages specifically
about git clone organization.

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2020-10-12 14:50:17 -05:00
Martí Bolívar
8165008f44 dts: remove legacy macro support
The legacy macros were first deprecated in Zephyr v2.3. Now that
Zephyr v2.4 has been released, that makes two releases where these
macros have been deprecated, so it's OK to remove them.

This leaves support for legacy binding syntax in place. Removing that
is left to future work.

We need to update various pieces of documentation related to flash
partitions that never got updated when the new API was introduced.
Consolidate this information in the flash_map.h API reference page,
since that's really where users will run into it. This also gives us
the opportunity to improve this documentation.

Adjust a couple of kconfigfunctions.py and sanitycheck bits to use
non-legacy edtlib APIs.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-09 08:45:38 -05:00
Andrzej Puzdrowski
18a56fc42c changelog: MCUBoot changes
Added changelog for changes introduced by
latest MCUBoot upgrade.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2020-10-09 11:50:10 +02:00
Marc Herbert
d1f25ce326 doc: ext: link-roles: fix crash when west is available but not used
It should be possible to submit quick documentation fixes without
depending on a complete west workspace. Fixes the following crash:

Exception occurred:
  File "west/src/west/util.py", line 82, in west_topdir
    raise WestNotFound('Could not find a West workspace '
west.util.WestNotFound: Could not find a West workspace in this
                        or any parent directory

Fixes ae8dd14887 ("doc: ext: link-roles: allow non-default baseurl")

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2020-10-09 11:49:29 +02:00
Kumar Gala
4d60b75588 sensor: vcnl4040: Update dts binding for defaults
* Add comments about the default settings
* Change proximity-trigger default to match POR of 'disabled'
* Added reference to datasheet

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-10-09 11:48:12 +02:00
Peter Bigot
cbff3e34d7 doc: kernel: workqueue: correct documentation of delayed work API
The delayed work API has been changed to allow cancellation in
conditions not previously documented, but this feature can cause both
submission and cancellation to fail in the general case.  Summarize
the conditions and highlight the importance of checking result codes
for these functions.

Also explicitly note that no kernel API can reliably indicate that a
work item has been completed, and that doing so is the responsibility
of the code that provides the work handler.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-10-09 11:48:00 +02:00
Jakub Rzeszutko
c195529615 shell: documentation update
Updating documentation with dictionary commands description.

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
2020-10-08 10:12:25 -04:00
Martí Bolívar
93608adb5a doc: update west build --pristine
This needs to be changed to reflect the change of default to 'auto'
from 'never'.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-07 15:16:24 -05:00
Fabio Utzig
c261b784c8 doc: fix broken link-roles on west>=0.8
Fix broken links generated by link-roles after west was upgrade to
0.8.0. `url` was previously `None` and now returns an empty str.

Signed-off-by: Fabio Utzig <fabio.utzig@nordicsemi.no>
2020-10-07 15:43:19 -04:00
Mattia Fiumara
8244590fb8 tracing: add feature for analysing post-mortem
This adds a Kconfig option for enabling post-mortem mode of SystemView.
This is useful for crashes that occur after a longer period of time.

Signed-off-by: Mattia Fiumara <mattia.fiumara@bgrid.com>
2020-10-07 10:10:48 -04:00
Peter Bigot
6b22c764f1 doc: coverage: document unit test coverage
Unit tests require a special board and use the host toolchain.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-10-06 18:08:19 -05:00
Martí Bolívar
cc6fe437c7 doc: west: fix typo in release notes
There's a copy/paste error here.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-06 09:12:41 -05:00
Martí Bolívar
cf5074c999 doc: release-notes: document DT_ENUM_IDX_OR
This is a new DT macro which was added in
c3eef7744a ("include/devicetree.h: Add
DT_ENUM_IDX_OR macro")

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-06 04:56:52 -05:00
Robert Lubos
4455bfc5c0 doc: reference: Add separate entries for CoAP, LwM2M and MQTT APIs
Application protocol APIs are unrelated to each other and change
separately, so it makes sense to have separate entries for each of them.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2020-10-06 12:01:13 +03:00
Robert Lubos
f7a5638871 net: lwm2m: Make bootstrap optional
Currently, after `CONFIG_LWM2M_RD_CLIENT_SUPPORT_BOOTSTRAP` is enabled,
the LwM2M engine will initiate bootstrap procedure on each run. This
approach limits the flexibility of the application, as it's not always
necessary to go over the bootstrap procedure (for instance, the
application may decide to store the security object obtained during the
bootstrap in flash, and restore it on boot).

Fix this by introducing an additional `flags` parameter to the
`lwm2m_rd_client_start()` function, which provides information whether
to run bootstrap in the current session or not.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2020-10-06 12:01:13 +03:00
YanBiao Hao
dc89bfcc7f Bluetooth: Mesh: Config Client network transmit set/get API
Get/Set network transmit parameter of a node.

Signed-off-by: YanBiao Hao <haoyanbiao@xiaomi.com>
2020-10-02 11:30:12 +02:00
Martí Bolívar
49fdfd4f39 doc: west: changes for v0.8
Track changes in the APIs and CLIs for this release.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-01 20:47:53 +02:00
Martí Bolívar
b593087734 doc: west: API doc cleanups
Use italics more consistently when referring to parameters by name.
Make the ImportFlag members appear.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-01 20:47:53 +02:00
Martí Bolívar
f6e90fce87 doc: west: add missing 0.7.x docs
I neglected to update the release notes when cutting these. Whoops.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-10-01 20:47:53 +02:00
Kumar Gala
55be783c85 settings: Remove deprecated SETTINGS_USE_BASE64 support
Remove code and associated tests and Kconfig related to
SETTINGS_USE_BASE64 that was deprecated in Zephyr 2.2

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-10-01 07:05:27 -05:00
Jukka Rissanen
722fbc1b80 net: mgmt: Clarify the net_mgmt API documentation
Add information about the network management events when user
wants to listen multiple events from different layers.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-09-30 16:31:38 +03:00
Maureen Helm
3dc0a7c965 doc: conf: Add 2.4.0 version selector
Adds the 2.4.0 release to the documentation version selector.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-27 15:15:49 -05:00
Maureen Helm
b211df9d9b doc: reference: Update API overview for 2.4.0
Updates the API overview table for APIs added or modified since 2.3.0.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-27 15:15:49 -05:00
Maureen Helm
b985624572 doc: reference: Add ec host command api hooks
Adds missing hooks to include the ec host command api in the generated
documentation.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-27 15:15:49 -05:00
Maureen Helm
0962b30173 doc: release: Add 2.5.0 release notes draft
Adds skeleton release notes for the next release.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-27 15:15:49 -05:00
Maureen Helm
e1f634b1f3 doc: release: Remove draft status from 2.4.0 release notes
The release notes are now complete.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-27 15:15:49 -05:00
Maureen Helm
0eba6ef639 doc: release: Clean up 2.4.0 release notes
Cleans up grammar, punctuation, and white space in the 2.4.0 release
notes.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-27 15:15:49 -05:00