Add a function to update the coap block context from a
packet, according to the block option enum provided.
The existing coap_next_block does not handle block1 transfers
properly because we need to inspect the block1 option
returned by the server. This function is reworked to make use
of the newly introduced one.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
According to RFC-7959:
When uploading with coap block1 requests the server may respond
with a size1 option (together with the response code 4.13).
This to indicate the maximum size the server is able and willing
to handle.
This commit changes the total_size in the current block context
being handled to the optional size1 option value from the server.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
A single PWM driver can be used for multiple LED numbers. In that
case -EALREADY may be reported. It should be ignored.
Signed-off-by: Marek Pieta <Marek.Pieta@nordicsemi.no>
Include the CANopenNode module integration files in the CAN bus
maintainers group and assign ownership to me.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Make use of the new MBOX APIs to create a ping-pong sample application.
This sample is using the NRFX IPC peripheral to send and receive signals
on different channels
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Rewrite the NRFX IPC driver to properly support multi-channel addressing
leveraging the newly introduced MBOX APIs.
Signed-off-by: Carlo Caione <ccaione@baylibre.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>
This is a driver for the Synopsys DesignWare MAC. It should work
with the "DesignWare Cores Ethernet Quality-of-Service" versions 4.x
and 5.x.
This driver uses a zero-copy strategy, meaning that the hardware
reads and writes data directly from/to packet fragment buffers
provided by the network subsystem without first copying the data into
a dedicated DMA bounce buffer.
Platform specific setup is necessary for the hardware to work.
Currently, only the STM32H7X series is implemented and tested.
While this part needs refinement, this driver performs better and uses
far less code space than the HAL-based alternative.
Not yet implemented:
- MDIO (it is WIP, currently relying on default PHY config)
- PTP support
- VLAN support
- various hardware offloads (when available)
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Those are especially useful with hardware device registers.
They behave the same way as their Linux equivalent, with a much
simpler implementation for now.
Example:
#define REG_FIELD_A GENMASK(6, 0)
#define REG_FIELD_B BIT(7)
#define REG_FIELD_C GENMASK(15, 8)
#define REG_FIELD_D GENMASK(31, 16)
Get:
a = FIELD_GET(REG_FIELD_A, reg);
b = FIELD_GET(REG_FIELD_B, reg);
Set:
reg = FIELD_PREP(REG_FIELD_A, 1) |
FIELD_PREP(REG_FIELD_B, 0) |
FIELD_PREP(REG_FIELD_C, c) |
FIELD_PREP(REG_FIELD_D, 0x40);
Modify:
reg &= ~REG_FIELD_C;
reg |= FIELD_PREP(REG_FIELD_C, c);
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Adds a config flag to enable floating point support for fxos8700
compatible accelerometer devices.
Signed-off-by: Jordan Stein <jordan.stein@fortrobotics.com>
Just always prove interface association descriptor for RNDIS
function instead of forcing it via Kconfig USB_COMPOSITE_DEVICE
option.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Set reasonable range for the request buffer in case RNDIS
function is used. Align net_buf size from rndis_cmd_pool to
request buffer size since request is copied there before
it is queued.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Fix BT_CTLR_LOW_LAT_ULL_DONE synchronization counting so
that done events are processed before pipeline enqueue
decisions are taken in LLL.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Refactors all of the DAC drivers to use a shared driver class
initialization priority configuration, CONFIG_DAC_INIT_PRIORITY, to
allow configuring DAC drivers separately from other devices. This is
similar to other driver classes like I2C and SPI.
The default is set to CONFIG_KERNEL_INIT_PRIORITY_DEVICE to preserve the
existing default initialization priority for most drivers. The
exceptions are dacx0508, dacx3608, and mcp4725 drivers which have
dependencies on SPI or I2C drivers and must therefore initialize later
than the default device priority.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Moves DAC driver configuration defaults from the application level to
the board level for the bl5340_dvk board.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Moves DAC dts node and driver configuration defaults from the
application level to the board level for the bl654_dvk board.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Moves DAC dts node and driver configuration defaults from the
application level to the board level for the bl653_dvk board.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Moves DAC dts node and driver configuration defaults from the
application level to the board level for the bl652_dvk board.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Fix incorrect Periodic Advertising interval when Coded PHY
support is built, chain PDUs is used and Extended
Advertising is disable while the Periodic Advertising
continues to be active.
Related to commit a379196b48 ("Bluetooth: controller:
nRF5: Back-to-Back Radio Tx interface").
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Fix configuration options for TF-M log levels configured to an empty
string when not defined. This can happen when none of the options
have been selected due to dependencies not being met.
For example when TFM_MINIMAL=y then TFM_PARTITION_LOG_LEVEL will not be
defined.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Adds another test configuration to ensure we build sensor drivers with
device power management enabled, in addition to the existing test that
builds sensor drivers with device power management disabled.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
The vcs_link should only run for the HTML builder, since it is the only
target of this extension. The other builders do not have the templates
instance, making them fail.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
In function smf_execute_ancestor_exit_actions, variables
"tmp_state" and "target_parent" are set but not used.
Twister passed:
twister -T tests/lib/smf/
Signed-off-by: Sam Hurst <sbh1187@gmail.com>
Mention TRNG support in the NEORV32 board documentation, but leave it
disabled by default.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
There is not need to handle all power states in switch state after
remove lower power and off states for devices.
Also, it incorporates the fix done in pull/38873.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.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
Add a function that can be used by device drivers to know
what will be next power state used by the SoC.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Added check to respect the TRACING_SYSCALL tracing option
when generating syscall tracing overrides in
gen_syscalls.py.
Signed-off-by: Torbjörn Leksell <torbjorn.leksell@percepio.com>
Enable the vcs_link extension so that pages contain "Open on Github"
link at the top.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add vcs_link extension. The extension can be used to obtain VCS (Git)
URLs for given Sphinx documents.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
- Use designated CSS parts to style the toggle properly
- Use breadcrumbs_aside block to render dark mode toggle
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Adds functionality to receive LoRa packets asynchronously. Reception
runs continuously until cancelled by another call to `lora_recv_async`.
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>