Add tests that verify that sendmsg() for DTLS works fine if provided
with multiple buffers.
Modify existing sendmsg() tests, so that we still tests the old
behavior if the feature is disabled.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
DTLS socket should be able to combine more than one message into a
single datagram when calling sendmsg().
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Certain samples are supposed to demonstrate technology-specific
features, therefore their dependencies in sample.yml could be
narrowed to run verify build only on boards which support that
specific technology (like Ethernet or OpenThread).
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Deprecate the can_calc_prescaler() API function, as it allows for bitrate
errors. Bitrate errors between nodes on the same network leads to them
drifting apart after the start-of-frame (SOF) synchronization has taken
place, leading to bus errors.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
The original packet's link-layer destination and source address can be
stored in separately allocated memory. This allocated memory can be
placed just after pkt data buffers.
In case when `net_pkt_find_offset()` uses condition:
`if (buf->data <= ptr && ptr <= (buf->data + buf->len)) {`
the offset is set outside the packet's buffer and the function returns
incorrect offset instead of error code.
Finally the offset is used to set ll address in cloned packet, and
this can have unexpected behavior (e.g. crash when cursor will be set
to empty memory).
Signed-off-by: Marcin Gasiorek <marcin.gasiorek@nordicsemi.no>
Charger hardware configuration registers are set to zero every time
external voltage is applied. Assure proper charger configuration by
buffering properties set by application and applying them at external
voltage connection event notified via interrupt.
Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
An anonymous enum describing charger status is used only by one
function therefore reduce scope of this enum.
Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
Utilization of chip interrupt line is mandatory to assure proper
charger state control. Handle interrupt to prepare the driver for
implementation of such functionality.
Modify charger status update so the current state is fetched in the
interrupt handler.
Use level based interrupts combined with interrupt disabling for a
period of time after interrupt handling to reduce number of interrupts
triggered by the charger. There may be a case where the charger
produces burst of interrupts for a several seconds and if the code
attempts to handle every single interrupt separatery then the system
might be significantly overloaded.
Co-authored-by: Bartosz Bilas <b.bilas@grinn-global.com>
Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
Rename `current_uv` argument name to `voltage_uv` in function
max20335_get_constant_charge_voltage() to make the name aligned with
its usage.
Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
Current driver handles charger status only but the charger chip
provides plenty of different statuses. Change name of
max20335_get_status() function to max20335_get_charger_status()
to make further implementations easier.
Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
pty is not available on Windows hosts. Running a sample in Qemu
on Windows shows an error. Fix it by enabling pty on Unix hosts only.
Signed-off-by: Michal Smola <michal.smola@nxp.com>
Some entries had the .git suffix in the repo-path property. While it
does not affect e.g. clones, it makes the project URL (built using base
url and repo-path) unusable to build other URLs (e.g. to point to a
commit, release tag, etc.).
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Updates the latency_measure test to add support for benchmarking
k_stack_push() and k_stack_pop().
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Add new bindings to describe the BELLBOARD peripheral in its two
_programming modes_ local or remote.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
- Include cleanup
- s/NET/REMOTE (remote core may have nothing to do with NET)
- Improved error reporting
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Add a mailbox driver for VEVIF. The driver can be built in either
'local' or 'remote' configuration. This depends on the existence of the
'interrupts' property, which signals that the instance is managed
locally. VEVIF is, as expected, always managed by a VPR core.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Set driver to initialize at early POST_KERNEL, so that we make sure
other future dependencies priorities (eg VEVIF) do not conflict.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Add `zephyr,ipc-icmsg*` nodes, with mboxes specified in a common file.
Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
Signed-off-by: Gerard Marull-Partetas <gerard@teslabs.com>
Add IPC shared memory regions in the global RAM, as well as an enlarged
SRAM region for Application core.
Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
Add a new nodes for PPR's VEVIF. In app cores, VEVIF registers are part
of the VPR peripheral, so it is exposed as a child node (since it
requires its own properties, eg #mbox-cells). In VPR, it's a CPU child
since it's not a memory-mapped peripheral, but used with CSRs.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Add some assert statements meant to check if L2 interrupts
are encoded right when dealing with nodes that consume interrupts
from multiple aggregators. For this to work, also add another
interrupt controller node which extends a different L1 interrupt
from `test_intc`.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Using `DT_IRQ_INTC()` to fetch the interrupt controller associated
with a node works well for nodes which consume interrupts from a
single aggregator. However, when specifying multiple (and different)
interrupt aggregators via the `interrupts-extended` property,
the L2 and L3 interrupts will no longer be encoded properly. This
is because `DT_IRQ_INTC(node_id)` uses `DT_IRQ_INTC_BY_IDX(node_id, 0)`
so all the interrupts will use the first aggregator as their parent.
To fix this, switch from using `DT_IRQ_INTC()` to `DT_IRQ_INTC_BY_IDX()`.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
To allow EDMA configuration with the help of the DT_INST_DMAS_*
and DT_DMAS_* macros, all that a consumer node needs to know
is which channel to configure and what MUX value needs to be
used. As such, this commit allows doing this by forcing the
dma-cells property to 2, each cell representing one of the
aforementioned properties.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
To make the content of the sample packets more more
understandable, comments describing it are added.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Add tests for the encapsulated vendor specific option callback API.
These test cases are focused on correct parsing of encapsulated
vendor specific options.
The sample DHCP messages have been extended accordingly.
Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Co-authored-by: Fin Maaß <f.mass@vogl-electronic.com>
In certain scenarios, it may be necessary to get values of additional
options from the application layer. With this patch, this can be
accomplished by registering a callback with the DHCP client.
This change has been tested using the posix build in qemu.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Nearly all other code places for k_thread_entry_t also keep
unused params in place to stay compatible with k_thread_entry_t.
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Adds tests related to the flags
that filter the tests:
* -e, --exclude-tag
* -S, --enable-slow
* --enable-slow-only
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
Adds tests related to the flags
that change the console outputs:
* --detailed-test-ids
* --no-detailed-test-ids
* -i, --inline-logs
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>