Use plural when referring to SSE registers (as in previous sentence) in
documentation of K_SSE_REGS thread option.
Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
One limitation of the current IPM API is that it is assuming that the
hardware is only exporting one single channel through which the data can
be sent or signalling can happen.
If the hardware supports multiple channels, the IPM device must be
instantiated (possibly in the DT) several times, one for each channel to
be able to send data through multiple channels using the same hw
peripheral. Also in the current IPM API only one callback can be
registered, that means that only one driver is controlling all the
signalling happening on all the channels.
This patch is introducing a new MBOX API that is supporting
multi-channel signalling and data exachange leveraging and extending the
previous (and outdated) IPM API.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
As discussed in issues/38619, this commit aims to simplify device
power management. It was removed PM_DEVICE_SATE_LOW_POWER.
The power subsystem now doesn't need to figure out which device state to
use of a given system power state. It just suspend and resume devices.
Devices now just need to respond to ACTIVE and SUSPEND and OFF actions
and they are free to use any particular substate they have when the
subsystem asks to suspend. They also don't need to worry about states
transitions (unless they have multiple substates) because the system
will just request them to suspend if they are active and vice-versa.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
rebase
THis patch fixes multiple issues when referencing to the C domain. In
some cases there were typos (e.g. missing :), in some others no domain
syntax was used for referencing, etc.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Fixes the code-block example for K_EVENT_DEFINE() documentation
to show that it only takes one argument instead of three.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Adds documentation for event objects. Events are posted to event
objects. Threads may wait on an event object for a specified set
of events.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
The shared multi-heap memory pool manager uses the multi-heap allocator
to manage a set of reserved memory regions with different capabilities /
attributes (cacheable, non-cacheable, etc...) defined in the DT.
The user can request allocation from the shared pool specifying the
capability / attribute of interest for the memory (cacheable /
non-cacheable memory, etc...)
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Move related areas to their own files and order
documentation logically from lower to upper layer.
Fix gross errors and inconsistencies.
Co-authored-by: Carles Cufí <carles.cufi@nordicsemi.no>
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Makes miscellaneous fixes to kernel and usermode documentation,
such as fixing broken links and adding clarifying wording.
Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
There's enough meat here to split the content up into areas:
devicetree.h itself, Python tooling changes, and bindings changes.
I also reworked the section describing vendor prefix fixes to use a
table, which I find more readable on a second pass through it.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
Adds information to the kernel scheduling documentation explaining
how a thread's deadline is used to determine the thread's relative
priority.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
The socket API was updated with mutex protection, however this
was not reflected in the documentation. Remove the obsolete note on the
thread-safety status of the socket API, to prevent confusion.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
PM_DEVICE_STATE_RESUMING and PM_DEVICE_STATE_SUSPENDING
are transitional states and are only used in device runtime. Remove it
and use device flag to keep track of a transition.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Inform that the queue has to be initialized in zeroed memory or with
the k_work_queue_init before use.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Add a new section in the API reference for the newly added
devicetree/pinctrl.h macros.
Amend macros.bnf in the guide to reflect the new generated macros for
getting at pinctrl information by name.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
Follow up on commit bfd45e5b8c
("drivers: remove Kconfig option CONFIG_UART_CONSOLE_ON_DEV_NAME")
Remove Kconfig options
CONFIG_BT_UART_ON_DEV_NAME and CONFIG_BT_MONITOR_ON_DEV_NAME
since all UART drivers are converted to devicetree and we can just use
DEVICE_DT_GET(DT_CHOSEN(zephyr_bt_uart)) and
DEVICE_DT_GET(DT_CHOSEN(zephyr_bt_mon_uart)).
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
The device pm actions (low_power or suspend) were switched. Also,
added SOFT_OFF to the suspend action.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Follow up on commit bfd45e5b8c
("drivers: remove Kconfig option CONFIG_UART_CONSOLE_ON_DEV_NAME")
Now we can also remove Kconfig option CONFIG_UART_CONSOLE_ON_DEV_NAME
since all UART drivers are converted to devicetree and we can just use
DEVICE_DT_GET(DT_CHOSEN(zephyr_shell_uart)).
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Move this to where priorities are being discussed to keep things in
context and to have all priority types documented in 1 place.
Fixes#21648
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Rework NCP interface configuration and NCP sample. Remove
CONFIG_OPENTHREAD_COPROCESSOR_SPINEL_ON_UART_DEV_NAME and
CONFIG_OPENTHREAD_COPROCESSOR_SPINEL_ON_UART_ACM Kconfig
options in favor of chosen node zephyr,ot-uart usage.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Deprecate the xoroshiro128+ PRNG algorithm in favour of xoshiro128++.
xoshiro128++ is a drop-in replacement which is invisible from the user
perspective.
xoroshiro128+ is unsuitable because it is explicitly a floating-point
PRNG, not a general-purpose PRNG. This means that the lower 4 bits of
the output are actually linear, not random (from the designers,
https://prng.di.unimi.it/). This means 1/8th of the generated data is
not random.
Additionally, xoroshiro128+ is not a 32bit algorithm, it operates on
64bit numbers. For the vast majority of Zephyr devices, this makes the
PRNG slower than it needs to be. The replacement (xoshiro128++) is
32bit, with no loss in state space (still 128 bit).
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
The verb tense for the suspended state was not consistent with other
states. The likely reason: state was being used as a command/action.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add missing eSPI driver interface under peripheral list.
Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
Co-authored-by: Gerard Marull-Paretas <gerard@teslabs.com>
The global variables in the Minimal C library are now placed in
z_libc_partition, update the document accordingly.
Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
Some Kconfig options are left marked as inline literals. But in
Zephyr document, we use the "kconfig" role provided by Sphinx.
Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
Mark the Controller Area Network (CAN) driver API as unstable. The CAN
API was introduced in Zephyr v1.14 and has since gained support for many
different hardware platforms.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Right now the kconfig index is randomly placed in the guides. This is a
table similar to other indeces we have and should be considered as part
of an appendix rather than place it in the middle of the documentation.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Align the capitalization of the term "Bluetooth Mesh" to Bluetooth mesh"
in the documentation. This is done to to match the new updated naming
convention done in Bluetooth SIG. In the upcoming spec versions, it its
used "Bluetooth mesh" with the lower case convention.
Signed-off-by: Ingar Kulbrandstad <ingar.kulbrandstad@nordicsemi.no>
Updates CXX support documentation to reflect exception support
added in fixes for #32448 and #35772.
Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
This API meets the requirements for marking an API stable:
- Test cases for the new API with 100% coverage: yes;
we have had coverage for every API macro since the beginning.
- Complete documentation in code. All public interfaces shall be
documented and available in online documentation.: yes, in the
reference documentation:
https://docs.zephyrproject.org/latest/reference/devicetree/api.html
- The API has been in-use and was available in at least 2 development
releases: yes; this API ws introduced in v2.3.
The basic design involving node identifiers and the macros that create
and operate on them has not changed since the API was introduced, and
it is in widespread use throughout the tree. As we head into a new
LTS, it's time to mark it stable.
This is more of an acknowledgement of reality than a big change, as I
don't see any backwards incompatible changes since the API was first
introduced in v2.3. (We have deprecated a lot of label related macros
that are no longer required now that we have DEVICE_DT_GET and
friends, but they're still there, and we're still testing them, just
as if this were a stable API.)
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>