Tracing guide in the docs was missing references to the added tracing
syscall macro hooks. This adds those.
Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
The Zephyr API grouping can be a bit difficult to maneuver. Ease this up
a bit by expanding the table of contents to contain two levels of
titles.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Reword a few of the reference documentation titles to better fit in with
the rest.
Do not use all-caps MODBUS for title.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Change the function pm_device_runtime_enable() to return 0 on
success or an error code in case of error.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Let the people know that the property names have been changed
so compatibility will be broken in the v3.0 release.
Signed-off-by: Bartosz Bilas <bartosz.bilas@hotmail.com>
When CONFIG_TRACING_OBJECT_TRACKING is enabled, the kernel will keep
lists of some objects (detailed below), so that debuggers or other tools
can keep track of them.
The lists of objects are:
struct k_timer *_track_list_k_timer;
struct k_mem_slab *_track_list_k_mem_slab;
struct k_sem *_track_list_k_sem;
struct k_mutex *_track_list_k_mutex;
struct k_stack *_track_list_k_stack;
struct k_msgq *_track_list_k_msgq;
struct k_mbox *_track_list_k_mbox;
struct k_pipe *_track_list_k_pipe;
struct k_queue *_track_list_k_queue;
Note that while CONFIG_TRACING is needed, one can always use
CONFIG_TRACE_NONE=y. Also, tracking will only be done for objects that
are also being traced (so, to prevent tracking of some type of object,
such as k_timer, just make CONFIG_TRACING_TIMER=n).
Some simple "sanity checking" tests are also added in this patch.
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Adds Xtensa as supported architecture for coredump. Fixes
a few typos in documentation, Kconfig and a C file. Dumps
minimal set of registers shown by 'info registers' in GDB
for the sample_controller and ESP32 SOCs. Updates tests.
Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
This was moved into the application development guide in commit
bf9ceac ("doc: move env_vars into application development").
That commit claimed the following rationale:
No reason why we are duplicating this information in a standalone
guide when we already talk about env variables in the application
developer guide.
A github comment later says the duplication was in "Important build
system variables":
https://github.com/zephyrproject-rtos/zephyr/pull/34364#discussion_r616646517
This is incorrect and a misreading of the application development
guide.
The application development guide is talking about **cmake**
variables. These are not the same thing at all as **environment**
variables; treating them as if they are the same is simply wrong and
misleading, especially the "option 4" part that is really about
CMake variables, not environment variables.
In fact, the separate environment variables page was created for a
reason, which was to have a single place to explain to people unused
to managing their environment how things work, without cluttering
things up for people who already understand this.
There is nothing wrong with small, self-contained guides and in fact I
would argue they are a good thing.
Fix this confusing situation by restoring the original, separate page
and extricating the portions of it that are not related to environment
variables.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
Storing CCC right after it's written reduces risk of inconsistency
of CCC values between bonded peers. The option should be enabled by
default. The developer could explicitly disable it to reduce memory
usage. After disabling the option explicitly, the developer is
aware of related potential issues.
Fixes: #40758
Signed-off-by: Marek Pieta <Marek.Pieta@nordicsemi.no>
Promote the Controller Area Network (CAN) subsystem reference
documentation from being part of the networking subsystem documentation
to having its own section.
The networking subsystem primarily deals with IP-based networking,
whereas CAN is a subsystem of its own.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Redirect stderr to DEVNULL when running `git describe --exact-match`.
This prevents messages like "fatal: No names found, cannot describe
anything." to be shown.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
References should be maded using the appropriate role, e.g. :ref:,
:c:func:, :kconfig:, etc.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Many documents relied on single quotes to create references, e.g.
`my_reference`. This is possible because `default_role = "any"` is
enabled in Sphinx conf.py. However, this method comes with its problems:
- It mixes all domains together, so it's not clear to what are you
referencing: a document? a Kconfig option? a C function?...
- It creates inconsistencies: in some places explicit roles are used
(e.g. :ref:`my_page`) while in some others not.
- _Conflictis_ with markdown. Single quotes are used for literals in
Markdown, so people tend to use the same syntax in Sphinx, even though
it has a different purpose.
Usages have been found using `git grep ' `[^`]*` ' -- **/*.rst`.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add iterable section in ram for struct usb_cfg_data and
new makro USBD_DEFINE_CFG_DATA which should be used to
define usb_cfg_date structures.
Deprecate makro USBD_CFG_DATA_DEFINE.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Deprecate the use of CAN-specific error return values and replace them
with standard errno values.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Recently we started to use Parasoft Codescan Static Analysis tool
to fix MISRA violations and align code to follow our Coding Guidelines.
I started fixing violations, and adding suppression tages to fix
false-positive findings. Developers started to ask me, what I'm doing
here and where is the documentation page about that.
Add a new section describing violations fixing process using Parasoft
tool.
Signed-off-by: Maksim Masalski <maksim.masalski@intel.com>
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>
Only certain type of admonitions were styled (e.g. notes, warnings,
etc.). This change also styles generic admonitions such as:
```rst
... admonition:: Rationale
...
```
Fixes#40622
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
The commit adds note on MCUMGR SMP over serial update that corrects
problem where CRC16 length was not added to a packet length.
Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
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>
A user may want to control message parameters (for example, delay
parameter) on every retransmission of a published message (for example,
see section 1.4.1 of the mesh model specification). This is essential
for lighting messages as time gap between messages retransmitted via
the publish-retransmit mechanism introduces unwanted jitter/pop-corn
when such retransmissions are received by a large 'group' of lights.
This commit adds an option to `struct bt_mesh_model_pub` to make the
access layer call `bt_mesh_model_pub.update` callback on every
retransmission. This also addes few macros and functions that can be
used for further calculations.
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
After removing the "type" and "dval" members, the documenation still
referred to these fields. This commit removes the paragraph
about checking the type of values returned from sensor.
Signed-off-by: Michał Barnaś <mb@semihalf.com>
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>