Commit Graph

3307 Commits

Author SHA1 Message Date
Gerard Marull-Paretas
457f3a46d6 doc: use doxyrunner
doxyrunner plugin replaces a series of CMake+Python hacks. These include
input changes tracking and incremental build output simulation.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-06 13:19:19 +02:00
Gerard Marull-Paretas
bff24fa732 doc: extensions: add doxyrunner
zephyr.doxyrunner Sphinx extension is meant to replace multiple Python
and CMake scripts into a single Sphinx extension.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-06 13:19:19 +02:00
Gerard Marull-Paretas
2207c4c8e5 doc: replace restore doxygen times script
Replace the restore modification times with a new script that is more
specific to the Doxygen+Sphinx needs.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-06 13:19:19 +02:00
Daniel Leung
37672958ac x86: mmu: relax KERNEL_VM_OFFSET == SRAM_OFFSET
There was a restriction that KERNEL_VM_OFFSET must equal to
SRAM_OFFSET so that page directory pointer (PDP) or page
directory (PD) can be reused. This is not very practical in
real world due to various hardware designs, especially those
where SRAM is not aligned to PDP or PD. So rework those bits.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-05-05 19:42:25 -04:00
Anas Nashif
52398df7b6 doc: integrate dict logging into main logging section
This belong alongside other logging related documentation. No for this
to exist on its own.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-05-05 19:07:24 -04:00
Gerard Marull-Paretas
5bdcf710eb doc: release: document device PM changes
Add some explanation and details on the device PM changes.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
56f1a8ce98 pm: rename PM_DEVICE_GET/SET_POWER_STATE to PM_DEVICE_STATE_GET/SET
Adjust name to be consistent with device PM naming conventions.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
7988ab4a26 pm: rename device_set/get_power_state to pm_device_set/get
Make name consistent with other device PM APIs.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
dbf46b3815 pm: rename device_pm_cb to pm_device_cb
Prefix all device PM functions/data structures with pm.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
7bfd3a11f3 device: rename device_pm_control to pm_control
Remove device_ prefix since it is redundant.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
2c7b763e47 pm: replace DEVICE_PM_* states with PM_DEVICE_*
Prefix device PM states with PM.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
a23de40f15 doc: pm: update runtime API names
Replace with pm_device_* API.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Gerard Marull-Paretas
f69759d34a pm: rename CONFIG_PM_DEVICE_IDLE to CONFIG_PM_DEVICE_RUNTIME
Make naming clear on the purpose of this option.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-05 18:35:49 -04:00
Martí Bolívar
58617fbec7 doc: dts: bindings: add dt-zephyr-user target
Just a bit of future-proofing so we can continue to link to the right
place in case we ever want to move the /zephyr,user docs out of the
'inferred bindings' section in the DT guide.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-05-05 20:46:43 +02:00
Martí Bolívar
60ab0af5db drivers: gpio: add GPIO_DT_SPEC_GET_OR and friends
These helper macros avoid boilerplate when constructing a gpio_dt_spec
structure from optional devicetree properties.

Update the release notes while we're here.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-05-05 20:46:43 +02:00
Magdalena Kasenberg
d0e0af74da Bluetooth: Add option to log btsnoops over RTT
There is a choice to log btmon logs over UART or RTT.
You can choose number of RTT buffer, set its name and size.

Replaced CONFIG_BT_DEBUG_MONITOR with CONFIG_BT_DEBUG_MONITOR_UART
for UART usage and CONFIG_BT_DEBUG_MONITOR_RTT for RTT.

Signed-off-by: Magdalena Kasenberg <magdalena.kasenberg@codecoup.pl>
2021-05-05 16:03:38 +02:00
Ioannis Glaropoulos
a1c6fbbfec doc: release notes: release notes entry for non-blocking secure calls
Add an entry in the release notes regarding the
support for non-blocking secure calls in Zephyr.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2021-05-05 13:00:31 +02:00
Gerard Marull-Paretas
ebfe9be01f doc: fix devicetree lexer warnings
Some warnings for invalid DT syntax have been fixed.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-04 22:42:15 -04:00
Gerard Marull-Paretas
091824369f doc: remove dts lexer
This lexer is no longer used as Pygments already supports devicetree
syntax.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-04 22:42:15 -04:00
Gerard Marull-Paretas
aa0b02bf75 doc: use pygments devicetree language support
Since Pygments 2.7.0 devicetree syntax is supported, so there is no need
to use a custom lexer. Version 2.9.0 introduces a fix that is required
for some devicetree snippets.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-05-04 22:42:15 -04:00
YouhuaX Zhu
965c8b9888 sanitycheck: Add a feature which can handle pytest script.
1. Add a class of Pytest(Harness) which can handle pytest script
in harness.py
2. Use running_dir to store current test directory which be
used in pytest scrpt.
3. Add usage of this feature into zephyr doc.

Signed-off-by: YouhuaX Zhu <youhuax.zhu@intel.com>
2021-05-04 19:08:18 -04:00
Martí Bolívar
faf68fb213 doc: west: add 0.11.0 docs
This is mainly a feature release which includes a few ways to speed up
'west update', along with a couple of fixes and other changes.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-05-04 15:29:36 -05:00
Tommie Skriver
7fac6a1bfd kernel: atomic: possibility of arch specific implementation
For non-specified archs, including those out-of-tree, the possibility to
use a specific implementation has been reintroduced.

CONFIG_ATOMIC_OPERATIONS_ARCH must be selected to utilize this.

Signed-off-by: Tommie Skriver <tosk@demant.com>
2021-05-03 11:57:46 +02:00
Nicolas Pitre
f1f63dda17 arm64: FPU context switching support
This adds FPU sharing support with a lazy context switching algorithm.

Every thread is allowed to use FPU/SIMD registers. In fact, the compiler
may insert FPU reg accesses in anycontext to optimize even non-FP code
unless the -mgeneral-regs-only compiler flag is used, but Zephyr
currently doesn't support such a build.

It is therefore possible to do FP access in IRS as well with this patch
although IRQs are then disabled to prevent nested IRQs in such cases.

Because the thread object grows in size, some tests have to be adjusted.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2021-05-03 11:56:50 +02:00
Ningx Zhao
9136c40833 tests: poll: revised document error
Some description about poll are not right,
adding some new description to revise it.

Fixes #33712

Signed-off-by: Ningx Zhao <ningx.zhao@intel.com>
2021-05-03 11:56:22 +02:00
Anas Nashif
6df4405cca doc: fix typos
Fix various typos in the docs.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-04-30 16:03:08 -04:00
Didrik Rokhaug
5045f5772c doc: fix typo in driver documentation
'whice' is replaced with 'which', which makes more sense in the
given context.

Signed-off-by: Didrik Rokhaug <didrik.rokhaug@gmail.com>
2021-04-30 11:23:48 -04:00
Andrzej Puzdrowski
29c838ed1d fs/nvs: document flash wbs migration capability
Document the fact than NVS image of different wbs
are compatible each other if psychical ATE size
is kept.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2021-04-30 12:27:27 +02:00
Daniel Leung
54283efcce x86: mmu: allow page table extra mappings to have cache disabled
This adds the bits to the gen_mmu.py script so that extra mappings
can be added with caching disabled. This is useful for mapping
MMIO regions where caching is not desired.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-04-29 21:17:24 -04:00
Robert Lubos
0d1577f7fe net: lwm2m: Add API function to delete object instance
Since the API already has a function to create an LwM2M object instance,
it makes sense to add a corresponding delete funtion, allowing the
application to delete created objects.

Additionally, for the remote delete set the Registration Update trigger
only when not in bootstrap mode.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-04-29 09:51:54 -04:00
Peter Bigot
b417442575 doc: kernel: document general policy for Zephyr without threads
This provides the documentation of scope required as a stage towards
removing deprecation for CONFIG_MULTITHREADING=n.  The specific lists
of what does work will follow as the code base is inspected and
updated.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2021-04-29 14:50:35 +02:00
Gerard Marull-Paretas
e6248db31d doc: releases: add notes on device_pm_control_nop removal
Add details on the removal of device_pm_control_nop.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-04-28 20:40:00 -04:00
Gerard Marull-Paretas
70fc2dc8f8 doc: remove references to device_pm_control_nop
Remove it from examples and from PM reference.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-04-28 20:40:00 -04:00
Gerard Marull-Paretas
2ec53e99e3 doc: releases: add notes on reboot header location change
Inform about the reboot header location changes.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-04-28 20:34:00 -04:00
Gerard Marull-Paretas
f163bdb280 power: move reboot functionality to os lib
Reboot functionality has nothing to do with PM, so move it out to the
subsys/os folder.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-04-28 20:34:00 -04:00
Daniel Leung
e1fc809419 doc: add documentation for dictionary-based logging
This adds new documentation for dictionary-based logging on
usage and low-level information.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-04-28 22:25:42 +02:00
Gerard Marull-Paretas
446432a9ac doc: doxygen: add support for function properties
Add aliases for setting function properties. A function may have 0, one
or more function properties. Example usage:

@funcprops \isr_ok, \async

These aliases will translate to API Terminology references when Doxygen
is rendered on Sphinx. On the Doxygen side they will just translate to
plain text.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-04-28 14:32:39 -04:00
Anas Nashif
d48627b994 doc: process: Fix heading levels
Fix and balance levels and move sub-sections to appropriate sections.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-04-28 12:58:36 -04:00
Anas Nashif
db1d7a78f4 doc: consolidate process documents
We have been adding process related docs in different places.
Consolidate them under one section in the docs and rename the top level
section to reflect that.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-04-28 12:58:36 -04:00
Hou Zhiqiang
0700a24276 devicetree: Add DT_FOREACH_CHILD_STATUS_OKAY macro
The macro only iterates the enabled child nodes and invokes
provided macro for each node.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2021-04-27 13:32:55 -04:00
Peter Bigot
d8cf822d66 doc: kernel: workqueue: add section on best practices
Refactor best practices from the API refactoring issue and integrate
them into the existing documentation.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-04-27 13:29:08 -04:00
Peter Bigot
add4c1d8ef doc: kernel: workqueue: miscellaneous cleanup
Minor terminology misuse, style changes, or clarifications.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-04-27 13:29:08 -04:00
Peter Bigot
0ef268f025 doc: kernel: workqueue: improve documentation on context retrieval
Reference the helper macro used to obtain the containing context
structure from a work item pointer within a work handler.  Also
document the proper way to do this for delayable work items.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-04-27 13:29:08 -04:00
Peter Bigot
1f0082249e doc: kernel: workqueue: explicitly mention K_WORK_DEFINE
Point out that this macro can be used to avoid the need to initialize
a work item.  This is still of limited use since it can't statically
initialize a work item within another structure.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-04-27 13:29:08 -04:00
Peter Bigot
537f966997 doc: kernel: workqueue: correct terminology misuse
Use queued uniformly when referring to items that are in a work queue,
rather than "pending" which includes items that are scheduled or
running.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-04-27 13:29:08 -04:00
Jukka Rissanen
9f2fa87e05 net: Remove support for CONFIG_NET_CONTEXT_TIMESTAMP option
This option was only able to collect statistics of transmitted
data. The same functionality is available if one sets the
CONFIG_NET_PKT_RXTIME_STATS and/or CONFIG_NET_PKT_TXTIME_STATS
options.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2021-04-26 10:46:43 +03:00
Jonathan Nilsen
0e6ac008a0 storage/stream: Add persistent write progress to stream_flash
Add additional API to stream_flash that can be used to make
stream write progress persistent using the settings subsystem.
This functionality makes it possible to resume a write operation
after it was interrupted, e.g. by power loss.

Signed-off-by: Jonathan Nilsen <Jonathan.Nilsen@nordicsemi.no>
2021-04-23 15:01:32 -05:00
Martí Bolívar
4c2886c1b7 doc: devicetree: overhaul bindings guide
The binding-template.yaml file has grown organically into something
that's out of control.

It makes too many 'see above' and 'see below' references to be read
comfortably, and we can't cross reference from YAML.

There are also many example DTS and YAML fragments scattered about in
comments, which cannot be syntax highlighted properly.

Fix that by overhauling the documentation into bindings.rst in the DT
guide. This will let us link to individual sections when answering
questions, allows us to cross-reference and use '.. code-block::',
etc.

A couple of things need to go to other pages.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-04-22 15:32:10 +02:00
Martí Bolívar
43086d3535 doc: devicetree: improve 'writing property values'
Break it down in a table based on each supported type in the bindings
language and add cross-references.

Move the section higher up, to make it easier to find.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-04-22 15:32:10 +02:00
Martí Bolívar
72c64d0b27 doc: devicetree: inferred bindings improvements
Improve the existing documentation by showing explicitly how to access
all of the properties in the example /zephyr,user node. This makes
use of the new DT_FOREACH_PROP_ELEM() macro in particular.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-04-22 15:32:10 +02:00