This also applies to the new experimental device stack, but
documentation for it has not yet begun.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Removes mention of child image to prevent confusion with other
systems that have no relation to sysbuild
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
It could be helpfull to have a note about running single testsuite,
and adding more runners to the note, that are supported in hardware map
Signed-off-by: Patryk Kuniecki <patryk.kuniecki@intel.com>
Document changes related to Kconfig settings so that users can see how to
adjust their settings for best results with Zephyr 3.6.
Signed-off-by: Keith Packard <keithp@keithp.com>
Following PR 68475, CONFIG_SHELL_ASYNC_API needs to be enabled, in
addition to CONFIG_UART_SYNC_API, to be able to use async serial shell.
Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
Add release notes detailing:
* Addition of TRANSMIT_IDLE event to modem_pipe module
* Implementation of TRANSMIT_IDLE event in all modem backends
* Extended all modem modules to use TRANSMIT_IDLE event
* Improved modem pipe event dispatching
* CMUX extended to act both as DCE and DTE
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
Since the removal of logging v1, there's only one version,
so remove the '2' from the function references for the docs
to link to the correct functions properly.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
The unicast_stop command takes either "all" or one or more
stream pointers as argument, but the argument handler did
not allow this.
The documentation for the command was also out of date.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add changes to Ethernet and Wi-Fi drivers for v3.6.
Also add information about generic Ethernet and Wi-Fi changes.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Quite a few of userspace related functions, macros and struct
have been renamed (z_ to k_). So make notes in the migration
guide.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This adds a few bits about more significant changes in UART.
Small changes and bug fixes are omitted.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Adds reference to new Kconfig,
CONFIG_NORDIC_QSPI_NOR_TIMEOUT_MS,
enabled by updates to nrfx.
Reference: zephyrproject-rtos/zephyr#66711
Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
Add to management subsystem section of release notes:
- Fix image confirm for Direct XIP
- Support for finding registered command groups
Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
The sensor-based illustration example did not consider the HLP feature
and used the work queue to publish to the Trigger channel. With the HLP,
that is not necessary anymore. The timer ISR can publish to the channel
directly. So, this commit improves the example description by
considering the HLP feature.
Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
The bt_iso_chan_send function could take an optional
timestamp by using 0 as an indicator. The issue with
this approach was that a timestamp value of 0 is valid,
and could cause potential issue with syncing streams
in a group.
To fully support transmitting with and without timestamp,
bt_iso_chan_send_ts has been introduced, which is the only
function of the two (bt_iso_chan_send being the other) that
supports timestamps.
A new function, rather than adding a boolean to the existing,
was chosen as it simplifies the individual functions as well
as making it more explicit what the function does.
Since the bt_iso_chan_send function is used by LE audio, both
the BAP and CAP send functions have similarly been updated.
Likewise, all tests and samples have been updated to use the
updated function(s), and BT_ISO_TIMESTAMP_NONE has been
removed.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This adds the Adafruit QTPy RP2040 and the Wiznet W5500 Evaluation Pico
boards to the 3.6 release notes.
Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
Add a note to the access randomization feature that reordering can
happen and what should be done to avoid it.
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Update outdated links. This includes a new repository address for the
Golioth OTA sample and an updated path for the OTA documentation.
Signed-off-by: Mike Szczys <mike@golioth.io>
Update MIPI DBI display migration note to match the correct display
configuration settings for reset and MIPI DBI command pins after ILI9xxx
display was transitioned to this API.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Documentation does not describe how to run QEMU on Windows.
Add description of steps needed to run QEMU and use QEMU
with Twister on Windows in Beyond the Getting Started
Guide. Add a reference to it in Aplication Development
section.
Tested using Windows 11 and QEMU installer from
https://qemu.weilnetz.de/w64/
Signed-off-by: Michal Smola <michal.smola@nxp.com>
By default, the DFU sample uses 0x0005 as PID in the Run-Time descriptors,
and when detached to the "proper" DFU mode, it uses 0xFFFF (one of the
values suggested by the DFU 1.1 spec).
So, 0xFFFF added to the table as well as indications of Run-Time and
DFU mode on both DFU entries.
Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
Mark the broadcast assistant as having a sample application
since that was recently implemented.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The intention of this commit is to clarify what belongs where, given
that recent contributions have made it unclear.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Add point about moving maximum allocation size from fixed buffer pool's
internal structure to a common one.
Signed-off-by: Konrad Derda <konrad.derda@nordicsemi.no>
This commit adds documentation about added functionality
for now interrupt tables parser and Link Time Optimisation.
Signed-off-by: Radosław Koppel <radoslaw.koppel@nordicsemi.no>
Improves the broadcast assistant shell documentation
which updates the existing documentation and adds
documentation to commands not yet documented.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add a short migration guide for the LC3 macro renames.
Only a few examples are mentioned, as there are far too
many changes to describe them all.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
`sched_getscheduler()` and `sched_getparam()`
is now implemented, mark it so.
Was missing on the documentation before.
signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
Adds details to the application development page and sysbuild
page documenting the variable, how it works and how it should
be used
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
This commit adds a documentation about the new parser of the
interrupt vectors tables that is using linker to construct
the arrays with all the runtime required data.
Signed-off-by: Radosław Koppel <radoslaw.koppel@nordicsemi.no>
This commit updates the definition of z_shared_isr_table_entry
to use _isr_table_entry instead of specially created z_shared_isr_client.
Signed-off-by: Radosław Koppel <radoslaw.koppel@nordicsemi.no>
Update the migration guide for release v3.6 to detail the change about
the bindings of `st,stm32-ospi-nor` and `st,stm32-qspi-nor` compatible
Signed-off-by: Francois Ramu <francois.ramu@st.com>
The polling API can be used to wait on data in a FIFO, message queue,
or pipe, but the docs were not clear that message queues and pipes
are supported.
Add to the docs to make it clear message queues and pipes
can be used with the polling API.
Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
Added on the bt_conn_cb set, used to notify listeners that a previously
allocated connection object has been freed. Used for e.g: restart
extended advertisements.
Signed-off-by: Luis Ubieda <luisf@croxel.com>
The sample illustrates how to calculate feedback value based on I2S
sample clock measurement or indirect I2S FRAMESTART and USBD SOF.
The sample is currently only supported on nrf5340dk_nrf5340_cpuapp
target because the feedback measurement uses target specific
peripherals.
While it should be possible to perform feedback value calculation
entirely in software (possibly with some additional filtering due
to software scheduling jitter), the I2S API does not provide necessary
timestamps.
Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Fixes: #68360
This commit introduces <type>_VERSION_TWEAK_STRING which includes
the tweak field in the string, but without the extra version.
This format is used by MCUboot / imgtool, and thus makes it easier to
align code to the format used by MCUboot.
This commit also introduces <type>_VERSION_EXTENDED_STRING which
includes the tweak field in the string in addition to the extra version
field.
The new defines / variables is available in code, CMake, and Kconfig,
and it defined for KERNEL, APP, and custom types, such as MCUBOOT.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
The commit export TWEAK version to code through version.h.
This aligns the symbols available in code with those available in
CMake and Kconfig.
The new define is available for both KERNEL, APP, and custom version
types (such as MCUBOOT).
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
The CONFIG_APP_LINK_WITH_POSIX_SUBSYS option was originally
present so that internal POSIX implementation headers would be
on the include path.
There is no implicit need for any app or library to include
private POSIX headers. Instead, the standard POSIX API should
be used.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Add note describing required devicetree changes to migrate ILI9XXX based
displays to use new MIPI DBI SPI driver, instead of directly using the
SPI API.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Fixed several issues with the install instructions for Fedora:
- removed packages that are already pulled by "Development Tools" and "C
Development Tools and Libraries" groups
- added missing "which" package needed for SDK installation script
- added python3-devel package (needed for some of the Python requirements)
and install python3 instead of a fixed python38
Tested on a vanilla Fedora 39 Docker image.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Warn users about the SOURCE macros not being defined globally anymore
and them needed to set them if they need them.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Updates in documentation support for `sysconf` API
in the `POSIX_SINGLE_PROCESS` group option.
Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
Rule A.5 is meant for code build with the embedded libCs and
which runs in embedded targets. Let's be more clear about this
and explicitly indicate that host tooling is not covered by it.
Otherwise, the current
"The "Zephyr codebase" in this context refers to all source
code files committed to the main Zephyr repository"
covers too much.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Asynchronous and interrupt driven APIs can be used at the same time for
different hardware peripherals.
Signed-off-by: Johan Stridkvist <johan.stridkvist@nordicsemi.no>
The MQTT docs used K_MSEC() to provide the timeout parameter to poll().
Doing this causes a compilation error as poll() expects it's
third parameter to be of type int, not k_timeout_t.
Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
Add a note about the renaming of several Renesas RA driver kconfig options.
These options have been renamed when renaming several driver file names.
Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
Add a note about the renaming of several Renesas RA driver kconfig options.
These options have been renamed when renaming several driver file names.
Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
Add information about zperf ratio between mbps and kbps, kbps and bps
changes from 1024 to 1000, to align with iperf.
Signed-off-by: Fengming Ye <frank.ye@nxp.com>
`mq_timedsend()` and `mq_timedreceive()` are implemented but
the information is missing in the documentation.
Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
Add a note about the addition of a can_mode_t argument to the
can_transceiver_enable() API call.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/build, hardware, kernel, project directory.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/services directory.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/develop directory.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/connectivity/networking directory.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/connectivity/bluetooth directory.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
Some very minor touch-ups for multi-level interrupt
wordings and documentations to better reflects its current
state.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/releases directory.
The typo in the 'Issue Related Items' section will be left unchanged.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
Updates in documentation support for `mq_notify` API
in `_POSIX_MESSAGE_PASSING` group option.
Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
A short release note referring to the official release notes,
and a migration guide with the most likely changes that need to be made.
Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
Enable GCC builtin static analysis in Zephyr's static code analysis
(SCA) infra.
When this option is enabled GCC performs a static analysis and
can point problems like:
sample.c
+ int *j;
+
+ if (j != NULL) {
+ printf("j != NULL\n");
output:
${ZEPHYR_BASE}/samples/userspace/hello_world_user/src/main.c:30:12:
warning: use of uninitialized value 'j' [CWE-457]
[-Wanalyzer-use-of-uninitialized-value]
30 | if (j != NULL) {
| ^
'main': events 1-2
|
| 25 | int *j;
| | ^
| | |
| | (1) region created on stack here
|......
| 30 | if (j != NULL) {
| | ~
| | |
| | (2) use of uninitialized value 'j' here
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Update the reference to the Bluetooth Appropriate Language Mapping
Tables document. The link is now the same as the Bluetooth SIG website
uses.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
A new cmake variable is added for zephyr modules, namely
`${ZEPHYR_CURRENT_MODULE_NAME}`. Add it to the documentation.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Currently it is tedious to know the level of an interrupt for
a node in C. One would have to go through a very complex and
error prone macros to check if there's a parent interrupt
controller & if the controller has an interrupt number and thus
not a pseudo interrupt controller like the one found in
`rv32m1`. The level of a node is required to encode the
Zephyr's multi-level interrupt number
Since it is easier to do it in the `gen_defines` script, let's
do the heavy lifting there so that we can introduce new DT
macros to get the interrupt level very easily later.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Drop the section of the coding guidelines that's referring to Parasoft
Codescan as it's not used by the project anymore.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Update the mention of the "currently integrated" version of TFM to match
the latest upgrade.
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
Add a note about the removal of the optional can_get_max_bitrate_t callback
from the CAN controller driver API.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Add a note about the removal of the CAN_FILTER_DATA and CAN_FILTER_RTR
flags from the CAN controller driver API.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
A growing number of CAN controllers do not have support for individual RX
hardware filters based on the Remote Transmission Request (RTR) bit. This
leads to various work-arounds on the driver level mixing hardware and
software filtering.
As the use of RTR frames is discouraged by CAN in Automation (CiA) - and
not even supported by newer standards, e.g. CAN FD - this often leads to
unnecessary overhead, added complexity, and worst-case to non-portable
behavior between various CAN controller drivers.
Instead, move to a simpler approach where the ability to accept/reject RTR
frames is globally configured via Kconfig. By default, all incoming RTR
frames are rejected at the driver level, a setting which can be supported
in hardware by most in-tree CAN controllers drivers.
Legacy applications or protocol implementations, where RTR reception is
required, can now select CONFIG_CAN_ACCEPT_RTR to accept incoming RTR
frames matching added CAN filters. These applications or protocols will
need to distinguish between RTR and data frames in their respective CAN RX
frame handling routines.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Bluetooth Mesh Protocol 1.1 is backward compatible with Bluetooth Mesh
Profile 1.0.1, therefore the stack can still be qualified for 1.0.1 if
needed. But explicit support for both versions requires additional
maintenance efforts and doubles the CI time. To make the stack
qualifiable for 1.0.1, the one needs to remove Private Beacons reception
and compile out SHA256 algorithm support.
What is changed:
- Removed `CONFIG_BT_MESH_V1d1` option.
- Removed `transport_legacy.c` which was using 1.0.1 implementation. The
new transport layer has new SaR logic that should still be possible to
qualify for 1.0.1.
- Removed the legacy transport Kconfig options. They are superseded by
the new transport Kconfig options.
- Tester app: `overlay-mesh-v1d1.conf` is merged into
`overlay-mesh.conf`.
- Removed BabbleSim tests for 1.0.1.
- Updated documentation.
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Since it takes 400 bytes of code and it is rarely used disable
by default this feature.
Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
This creates a set of substitution rules to replace all current usages
of SDK versions in the documentation, apart from a few that were not
meant to be copy-pastable anyway and the version has just been swapped
with a <version> placeholder.
Since code-block does not parse the content, these have all been
replaced with parsed-literal. That one though parses URLs, which cannot
be broken, so a series of URL substitutions are provided too.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The `SHELL_UART_DEFINE` macro was previously
`SHELL_UART_DEFINE(_name, _tx_ringbuf_size, _rx_ringbuf_size)`,
before it got removed in #63967 and then reinstated in #66218 as
`SHELL_UART_DEFINE(_name)`.
However its current form isn't compatible with previous Zephyr
version, and would cause compilation error when an application
migrates from to v3.6, let's modify it to accept variable
arguments for now.
Added documentation for this public API and updated the
migration guide accordingly.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Put CAP Commander into WIP.
Put PBP source and sink into done.
Put GMAP into done (minus samples).
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Extend the gen_defines.py write_interrupts(node) function to
generate macros to get the interrupt controller for an
interrupt specifier by idx and by name.
The information is already generated by edtlib.py and stored in
node.interrupts[].controller. This addition uses the node pointed
to by the controller member to generate the following example output
define DT_N_S_device1_IRQ_IDX_0_CONTROLLER \
DT_N_S_gpio_800
define DT_N_S_device1_IRQ_NAME_test4_CONTROLLER \
N_S_device1_IRQ_IDX_0_CONTROLLER
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
In some cases, PINCTRL_STATE_SLEEP may be required even when
CONFIG_PM_DEVICE is not defined.
One example is the possibility/need to put JTAG pins to analog when
CONIG_PM=y and CONFIG_DEBUG=n.
Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
Previously it was not always possible to prepend the header.
It was not possible if the application neglected to reserve the space
for headers. This is bad because it forces a buffer segment allocation
even if the buffer had enough room for the headers. E.g. a payload of 10
bytes in a netbuf of 30 bytes would have been segmented.
We now explicitly reject the buffer if it does not have the headroom.
This allows us to do a nice thing; simplify L2CAP segmentation.
We convert the SDU from the application into a PDU payload, by
prepending the SDU header, i.e. the SDU length in the original buffer.
This PDU payload is ready to be chunked into PDUs without having to keep
track of where in the SDU we are. This has the effect of removing a
bunch of logic in the segmentation machine.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
No point marking the phy API to be callable from usermode,
the device cannot be accessed from usermode anyway so this
is pointless. User can call the phy API from supervisor mode
thread just fine.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
When using the code and data relocation feature, every relocated symbol
would be marked with `KEEP()` in the generated linker script. Therefore,
if any input files contained unused code, then it wouldn't be discarded
by the linker, even when invoked with `--gc-sections`.
This can cause unexpected bloat, or other link-time issues stemming from
some symbols being discarded and others not.
On the other hand, this behavior has been present since the feature's
introduction, so it should remain default for the users who rely on it.
This patch introduces support for `zephyr_code_relocate(... NOKEEP)`.
This will suppress the generation of `KEEP()` statements for all symbols
in a particular library or set of files.
Much like `NOCOPY`, the `NOKEEP` flag is passed to `gen_relocate_app.py`
in string form. The script is now equipped to handle multiple such flags
when passed from CMake as a semicolon-separated list, like so:
"SRAM2:NOCOPY;NOKEEP:/path/to/file1.c;/path/to/file2.c"
Documentation and tests are updated here as well.
Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
It seems like a nice idea at first, but leads to hard-to-debug
situations for the application.
The previous behavior can be implemented by the app by defining
`alloc_seg` and allocating from the same pool as `buf`.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Force include interface header files first before other files
under include. This is due to doxygen always using the first
found item during linking. Because of this, without forcing
the interface definitions first, almost all of these would
link to the same named items, for example, under ARC header
files instead. Hence the need to manually shuffle the items
so linking would actually link to the correct items.
Note that this only works with functions and macros that are
actually defined in the interface file. A simple doc section
with @def would not work as this is not an actual definition.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This moves the doxygen doc from atomic_builtin.h to
atomic.h, as the doc should not have been inside
a particular implementation.
Also add an alias @atomic_api to replace the repetitive
wordings in the doc.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Mention the change in the microchip,mcp320x bindings to use the common
io-channel-cells name "input" instead of "channel".
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Add a simple document describing various network related
configuration options and how they affect the available
resources in the system.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
So that external users of the domain only interested in e.g. referencing
roles, can skip tweaks made to Breathe's directives.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Zephyr's domain code-sample object description was incorrectly yielded,
making Sphinx inventory (objects.inv) unusable on other projects that
need to use the domain via Intersphinx.
Ref. https://www.sphinx-doc.org/en/master/extdev/domainapi.html
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Add a note describing the new default for the STM32H7 FDCAN CAN controller
domain/kernel clock and how to override it.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Any C library with conformant implementations of POSIX features,
options, or option groups can be used in place of the versions
provided with Zephyr's POSIX implementation as long as there is
no source licensing compatibility or linking clause violation.
Implementations of such features, options, or option groups can
be used in whole or in part, as long as there is no conflict
with the rest of Zephyr or the application.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Add POSIX_C_LANG_JUMP and POSIX_C_LANG_MATH option groups
with links to specification details on opengroup.org .
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
In order to reduce verbosity on the primary Option Groups page,
simply add a note that the POSIX_C_LANG_SUPPORT is considered
supported with newlib, picolibc, or any other libc conforming to
the ISO C standard.
Add a link to the language support page that details C, C++, ..
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Add an input driver to read data from an analog device, such as a
thumbstick, connected to an ADC channel, and report it as an input
device.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The `sem_open()`, `sem_close()` & `sem_unlink()` functions are
now implemented, so mark them as supported.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
To make possible to build bsim tests by Twister, it is necessary to
copy executables to BabbleSim bin directory.
Signed-off-by: Piotr Golyzniak <metody159@gmail.com>
The ppp doc was still referring to gsm-modem sample which
is no longer there. Also removed old information that is no
longer relevant.
Fixes#67171
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Mention the change in the ti,lmp90xxx bindings to use the common
io-channel-cells name "input" instead of "positive" and "negative".
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Add a small paragraph about the EEPROM simulator,
and improve slightly the flash simulator section
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The current zephyr.spdx does not contain the modules included in the build.
This commit split the zephyr-sources package into multiple packages, one
for each modules found by zephyr_module.py.
Signed-off-by: Thomas Gagneret <tgagneret@witekio.com>
PBP API allows sources to create a Public Broadcast Announcement.
PBP API to parse a Public Broadcast Announcement.
public_broadcast_source application starts extended advertising and
includes a Public Broadcast Announcement. The advertised broadcast
audio stream quality will cycle between high and standard quality.
public_broadcast_sink application scans for broadcast sources and
synchronizes to the first found source which defines a Public Broadcast
Announcement including a High Quality Public Broadcast Audio Stream
configuration.
Add bsim tests for Public Broadcast Profile APIs.
Add shell implementation for Public Broadcast Profile APIs.
Signed-off-by: Daniela Andreea Dumitrache <danielaandreea.dumitrache@nxp.com>
- Support for listing both testcases and testsuites
- Support for running single suites or single test cases
- Support shuffling tests and repeating execution based on command line
arguments.
For example, build with
west build -p -b qemu_cortex_m3 tests/kernel/sleep -t run -- \
-DCONFIG_ZTEST_SHUFFLE=y -DCONFIG_ZTEST_SHELL=y
Following commands are available:
uart:~$ ztest
ztest - Ztest commands
Subcommands:
run-all :Run all tests
shuffle :Shuffle tests
list-testsuites :List all test suites
list-testcases :List all test cases
run-testsuite :Run test suite
run-testcase :Run testcase
shuffle accepts two arguments --suite_iter and --case_iter which allows
repeated exercution of testcases or suites.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This driver supports few different hardware configurations, add a
document page showing some of them next to some schematics snippets
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Add reference to section in RTC peripheral documentation which
covers the emulated RTC.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
Fixed several headings in the contribute section that were not following
the documentation guidelines for headings.
Signed-off-by: Grzegorz Ferenc <Grzegorz.Ferenc@nordicsemi.no>
Remove `IEEE802154_SELECTIVE_TXPOWER` option.
Cache the tx power value in nRF5 driver and make use of it on each
operation.
Signed-off-by: Eduardo Montoya <eduardo.montoya@nordicsemi.no>
Signed-off-by: Jędrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
* Convert png figures to svg
* Remove app.png and the paragraph which elaborated on it.
(It was very specific to some particular
user case, and having it did not improve understanding)
* Correct all references to "native_posix drivers" to
the be just "emulated drivers"
(they are not native_sim specific)
* Correct path for a file which was moved
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Limit the content of this page to only cover the bus
emulators and their peripherals.
Until now, there was some out of place references to
emulators of a completely different type which did
not match the descriptions in this page.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Created new emulators page, and moved the
current page to be a page dedicated to bus emulators.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Changes the API support level of retained memory from experimental
to unstable, now that there are 3 drivers
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Sets static analysis an indispensable requirement for our project
releases.
Static analysis is not merely a tool but a proactive
strategy to unearth and address potential issues in the early stages
of development, long before they mature into critical
vulnerabilities. By scrutinizing code at rest, static analysis unveils
latent defects and potential security risks, thus bolstering the
resilience of our software against future threats.
Fixes: #64591
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
* use _POSIX_AEP_REALTIME_DEDICATED instead of CONTROLLER
* use _POSIX_AEP_REALTIME_DEDICATED instead of MINIMAL in
comment
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Twister now uses GCOVR by default as the more reliable code
coverage reporting tool instead of LCOV.
Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
Documentation pages around Kconfig have moved around on a couple of
occasions in the past [1] [2] and current redirects were dysfonctional
(leading /) and incomplete, while an entire set of redirects was also
missing. This notably fixes the "browse latest development version of
this page" link on
https://docs.zephyrproject.org/2.7.5/guides/build/kconfig/tips.html or a
link to the "Kconfig tips" page as found in Kconfiglib's current README
(https://pypi.org/project/kconfiglib/)
[1] commit 5342bc64dd [2] commit
5c88418428Fixes#66701
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
It is often confusing for users and developers alike to see the sentence
"stable API change" in a label or in the release notes. Stable APIs can
change in at least two ways (retaining compatibility or not), and so it
is preferrable to use a term that clearly describes the change as
incompatible, by using the common term "breaking".
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Add a note about the new K_MEM_POOL_HEAP_SIZE define and the mechanism
for specifying custom system heap size requirements.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
There are several subsystems and boards which require a relatively large
system heap (used by k_malloc()) to function properly. This became even
more notable with the recent introduction of the ACPICA library, which
causes ACPI-using boards to require a system heap of up to several
megabytes in size.
Until now, subsystems and boards have tried to solve this by having
Kconfig overlays which modify the default value of HEAP_MEM_POOL_SIZE.
This works ok, except when applications start explicitly setting values
in their prj.conf files:
$ git grep CONFIG_HEAP_MEM_POOL_SIZE= tests samples|wc -l
157
The vast majority of values set by current sample or test applications
is much too small for subsystems like ACPI, which results in the
application not being able to run on such boards.
To solve this situation, we introduce support for subsystems to specify
their own custom system heap size requirement. Subsystems do
this by defining Kconfig options with the prefix HEAP_MEM_POOL_ADD_SIZE_.
The final value of the system heap is the sum of the custom
minimum requirements, or the value existing HEAP_MEM_POOL_SIZE option,
whichever is greater.
We also introduce a new HEAP_MEM_POOL_IGNORE_MIN Kconfig option which
applications can use to force a lower value than what subsystems have
specficied, however this behavior is disabled by default.
Whenever the minimum is greater than the requested value a CMake warning
will be issued in the build output.
This patch ends up modifying several places outside of kernel code,
since the presence of the system heap is no longer detected using a
non-zero CONFIG_HEAP_MEM_POOL_SIZE value, rather it's now detected using
a new K_HEAP_MEM_POOL_SIZE value that's evaluated at build.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Support `zephyr-app-commands` being provided with a `build-dir-fmt`,
option, which assumes that `west config build.dir-fmt` has been run
previously.
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
Implement the CAP Commander discovery function.
Adds support for it in the shell.
This includes initial babblesim and unit testing as well.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The section 3.7.3.1 of the mesh specification recommends to delay
a message publication in certain cases:
- at power-up or upon state change for a time between 20 to 500 ms
- for periodic publications for a time between 20 to 50 ms
This change implements this recommendation by adding the
`CONFIG_BT_MESH_DELAYABLE_PUBLICATION` Kconfig option which enables
the randomization code and by adding the `bt_mesh_model_pub.delayable`
bit field which allows each model decide whether the publications
should be delayed for this model or not.
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Add an entry to indicate the changes to the coap_service_send and
coap_resource_send API functions.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Update coap_service_send and coap_resource_send to take an optional
pointer argument to the newly introduced coap_transmission_parameters.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Why?
- metadata is easier to manage as an array + index
- less error-prone -> less memory-management bugs
- we can. because of the previous refactor
- PDU allocations are more predictable
- ATT buffer size can be optimized by app
- isolates ATT from the rest of the ACL users
- decouples ATT PDU size from e.g. SMP w/ LESC
Drawbacks:
- higher memory usage
- kconfig change
The higher memory use is only temporary, as this will be followed-up
with more refactors that should bring it back down.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Co-authored-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
Resolve wrong documentation c function links for
irq: z_shared_isr, rtio: rtio_cqe_get_mempool_buffer
and sensor: sensor_read
Signed-off-by: Simon Hein <Shein@baumer.com>
Having libpython3.8-dev explicitly mentioned causes issues if
"python3-dev" pulls a Python version that's not 3.8. What's more,
python3-dev already pulls the correct "versionless" libpython3-dev
anyway.
Fixes#66461
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Replace function parameter 'retries' with pointer to structure
holding coap transmission parameters. This allows setting the
retransmission parameters individually for each pending request.
Add coap transmission parameters to coap_pending structure.
Update migration guide and release notes.
Signed-off-by: Juha Ylinen <juha.ylinen@nordicsemi.no>
Add UI to select preferred search engine when Google Programmable Search is
enabled. The user's preference is saved using local storage.
This also makes the search input field of type "search" for better UX (in
particular on mobile).
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add Google Programmable Search engine to the documentation, while
leaving it possible to easily revert to the built-in Sphinx search
engine. As the styling of the search results is apparently not thought
to be easy to tweak, the gcs.css stylesheet might require further
improvements.
Fixes#55173.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Some portions of the documentation do not make sense when shown as
"snippets" in search engines' results. Use "data-nosnippet" attribute to
instruct search engines (Google for sure, hopefully others in the
future) to exclude them.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
The "Sphinx search extension" CSS rules are not needed as we are not
using this extension since we are not hosting on readthedocs.io.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Update to a more recent version of Doyxgen Awesome for better
compatibilty with recent versions of Doxygen.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This picks up custom javscript from Godot documentation and uses CSS
rules we already had in place (only they were not used) to tweak the
page scroll behavior. As folks scroll down the page, the Zephyr logo in
the top right corner gradually disappears, leaving more room for the
navigation menu.
Also, when scrolling in the navigation pane, the UI there is slightly
adapted to make it more clear that the search box is "fixed", plus,
when one reaches the bottom of the navigation tree and continues
scrolling, the "main" page scrolls down.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add README.rst file with description of sample which shows how to use
pytest and Twister together.
Signed-off-by: Piotr Golyzniak <piotr.golyzniak@nordicsemi.no>
Improve documentation about pytest integration with Twister. Add
examples of usage, improve description of available options and
introduce automatic doc generation of two plugin classes (DeviceAdapter
and Shell) basing on their docstrings from source code.
Signed-off-by: Piotr Golyzniak <piotr.golyzniak@nordicsemi.no>
Renames "prov device" references and options to
"provisionee" to align implementation with Mesh
Protocol specification v1.1, section 5.4.
Signed-off-by: Anders Storrø <anders.storro@nordicsemi.no>
There is no in-tree user. Also, it is misleading as we use
SCOMPARE1 for spinlock too, not just IPC.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC should be defined at the SoC
or the board level since Xtensa cores are high configurable.
The default is just for ISS (Instruction Set Simulator). So
remove it from the arch level.
The xt-sim board is the only one in tree that is targeting
the ISS, so add it there.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
() Moves the architecture specific timing measurement APIs
under the timing measurement APIs group.
() Add SoC and board specific API groups.
() Document each SoC and board specific API so the doc shows up
for them.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Adds a charge_enable handler to facilitate enabling and disabling
a charge cycle. This deprecates enabling and disable the charge
cycle via the CHARGER_PROP_STATUS property.
Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
Rename the native Linux SocketCAN driver to reflect that it can can now be
used in both native_posix and native_sim (with or without an embedded
C-library).
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Add a delay parameter to asynchronous device runtim put. This allows
to delay the put operation what is useful to avoid multiple states
transitions.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Update migration guide to introduce the stm32_lp_tick_source
for stm32 device when choosing the LPTIM fo lowPower modes.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Add the GMAP shell module with support for running the
various audio configurations in an easy way.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Commit adds implementation of the specification
recommendations regarding randomization of
responses on the access layer.
3.7.3.1 Transmitting an Access messages
Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
samples/boards/nrf/system_off does not enable CONFIG_PM so
it should not be listed as an example in system power management
documentation.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Adds a note that the shell mcuboot erase command can no
longer erase the MCUboot or application slots
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
The EXTRA_DTC_OVERLAY_FILE is also an important build system variable,
therefore add it to the list and give a brief description.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
The Network Connectivity API page is kind of pointless, as it provides
little information (which can be found elsewhere as well) and it was
pointer out that it kind of creates noise in the documentation as it can
be confused with the page which provides a summary of network APIs.
Therefore, remove the page, and move the information from it elsewhere.
The brief summary of what APIs to use was moved the Networking APIs
index page. The information about the samples demonstrating BSD sockets
API usage was moved to the BSD sockets documentation page itself.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Several application protocol libraries documentation missed information
on how can they be enabled (i. e. missed info about associated Kconfig
symbol). This commit fixes it.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Update the release notes and migration guide for CoAP events using
the Network Events subsystem.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
The Console Harness is able to parse its log with patterns to compose
extracted fields into records in 'recording.csv' file in the test's build
directory. This feature allows to extract custom test results like
performance counters.
With this change the extracted records are also written into 'twister.json'
as a part of each test suite object. This makes easier to store
all the data collected by the test for its further processing.
Other improvements:
- compile parsing pattern only once instead of at each input line;
- quote fields in '.csv' to avoid unexpected field separators;
- make 'regex' a required schema field of 'harness_config';
- Twister documentation update.
Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
This changes to pass full path of MAINTAINERS.yml to
get_maintainer.Maintainers(). Without this, Maintainers would
use git to find the top level of Zephyr tree. This restricts
building of doc only when the build directory is under Zephyr
root. Since we have ZEPHYR_BASE in gh_utils, we can pass full
path of MAINTAINERS.yml to Maintainers() so that doc build
directory no longer has to be under Zephyr root.
Fixes#65037
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Add marker to keep the link list sorted.
Suggested-by: Benjamin Cabé <benjamin@zephyrproject.org>
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This commit fixes incorrect rendering of the list detailing the various
parameters for the NET_SOCKET_OFFLOAD_REGISTER macro.
This also improves the spelling and grammar of said list.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit loads the RTD theme as a Sphinx extension, which has the
benefit of going through said extension's "setup" method, effectively
setting useful settings such as default permalink icon (moving away from
the default, not so pretty, "¶").
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Properly document the actions that application should
take on certain events.
This clarifies the events that indicate that the LwM2M
engine is stopped.
Add missing events to the state machine diagram and
apply color coding to states.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Add an example using the macro NET_MGMT_REGISTER_EVENT_HANDLER to the
network management documentation.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Add information about the IPv4 multicast IP_ADD_MEMBERSHIP and
IP_DROP_MEMBERSHIP socket options.
Add information about the IPv6 multicast IPV6_ADD_MEMBERSHIP and
IPV6_DROP_MEMBERSHIP socket options.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Add information about IPv4 TTL and IPv6 hoplimit changes
for unicast and multicast packets.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Add information about IPv4 TTL and IPv6 hoplimit changes
for unicast and multicast packets.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
native_sim is superceeding native_posix.
Let's recommend users to use it instead.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
These were first deprecated in v3.2. We have kept support for them
for as long as we can, but now their presence is causing CI failures
in some configurations. Specifically, using the deprecated 'label'
property is causing a warning which is promoted to an error in some
twister runs. This is blocking other forward progress in the
devicetree API.
I tried to rework the tests to avoid this, but it was too much effort
for the time I had to work on the task. Removing the APIs is therefore
unfortunately the best way forward to unblocking other work.
Re-work the test suite a bit to maintain coverage where we are using
the label property to test other macros.
Add a migration guide section to help with the transition.
Signed-off-by: Martí Bolívar <mbolivar@amperecomputing.com>
SIG has changed Bluetooth mesh to Bluetooth Mesh
Updating zephyr docs accordingly
Leaving out old release notes
Signed-off-by: Mia Koen <mia.koen@nordicsemi.no>
Note that native_sim is replacing native_posix as default
test platform.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The section overview list at the beginning of the document
is missing a few sections which were added after the list
was first created. So add them.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
The function _Cstart has already been renamed to z_cstart,
so change the remaining references of it in various docs.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
The stack object memory map was missing from the doc due to
incorrect indentation. Fix it so that it shows up in the doc.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
One can not even replace sucessfully pytest basic sample `pytest-args`
with command line "--pytest-args", as all it does is to append a single
string to current list of commands, making it impossible to send several
arguments.
This patch fixes that by allowing several instances of `--pytest-args`
to compose the whole list of arguments to be passed to pytest.
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
This allows HCI drivers to expose vendor-specific functions to set the
public address.
Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
Add a name for the Kconfig choice symbol
indicating the Zbus subscriber buffer allocation
and adjust the name of the existing choices.
Signed-off-by: Bartosz Bilas <bartosz.bilas@hotmail.com>
Previously pthread_attr_getguardsize() and
pthread_attr_setguardsize() were part of the
XSI_THREADS_EXT option group. That is no longer the case.
In IEEE 1003.1-2017 they are part of the POSIX_THREADS_EXT
option group.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
The function pthread_setcanceltype() is supported and mandatory
for conforming implementations.
Mark it as supported since the preceding commit.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
This fixes a bug where a newly created documentation file not yet
tracked by git would cause the documentation generation to fail.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>