Moved the name filter last, as that it the most expensive
to use.
The address filter has almost been moved after the more
trivial checks.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Move the check for the pa_interval to before we start
parsing the data for the name, as that is more optimized.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add filtering for the pa_interval. This can be used to
easier find devices that are advertising with periodic
advertising.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Enable Zephyr device runtime power management mechanisms in Intel HDA
DMA driver. This allows Zephyr to track usage reference for power domain
gating.
PM action handler is currently empty and will be fill out later.
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
The status field is currently a uint32_t even though there are only
3 possible values. Reducing it to a uint8_t allows status to fit in
existing padding in the struct, saving 4 bytes per ticker_user_op
Updated function signatures to match; ticker_op_func left as-is
to avoid having to update a whole bunch of files for no real benefit
Signed-off-by: Troels Nilsson <trnn@demant.com>
Add entries for the BUCK0/1/2/3 and LDO0/1 regulators. Note that voltage
min/max limits have been set to the hardware limits. They can be
adjusted using overlays in applications, depending on the consumer
circuit constraints.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
There's now two google_* boards in the repository and it looks like we
are going to keep a common prefix for these.
Add an explicit maintainer entry for these with Keith and I as
maintainers so that PRs against these will get reviewers and assignees.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Update documentation for imxrt boards to reflect the default clock
source being systick, and clarify that the GPT timer will only be
used in low power modes. Add a build time warning when the GPT
timer is enabled, so that the user will be aware of the resolution
tradeoff when using the GPT timer.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Switch all imxrt boards to use the systick timer by default, and only
enable the GPT timer when using low power modes. This is desirable
because the systick has a higher resolution, but the GPT can run
while the core clock is gated, making it useful for low power modes.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
To be able to call pm_device_runtime_put() from an IRQ context, move
from mutexes to semaphores and force the async path when the put
operation is called from an ISR.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
For the async operation move from condition variables to events to
reduce the dependency on the mutexes that cannot be used in IRQ
context.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
This commit adds the requirement for the `TIMER_RANDOM_GENERATOR`
Kconfig to be set to `n` because it enables timer-based pseudo-random
number generator, which is only intended to be used for testing
purposes.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
The `TEST_RANDOM_GENERATOR` symbol in itself does not imply that a
non-random number generator is selected -- that is indicated by the
`RNG_GENERATOR_CHOICE` choices, of which only `TIMER_RANDOM_GENERATOR`
is a non-random generator.
This commit updates the Random subsystem to print the "non-random
number generator usage warning" when `TIMER_RANDOM_GENERATOR` is
selected, as opposed to when `TEST_RANDOM_GENERATOR` is selected.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
The `TEST_RANDOM_GENERATOR` Kconfig symbol indicates that a non-random
number generator (i.e. a random number generator that is not truly
random) is _allowed_ to be used for testing purposes, and not
necessarily that a non-random number generator is _selected_ -- that is
indicated by the `RNG_GENERATOR_CHOICE` choices that depend on
`TEST_RANDOM_GENERATOR` (i.e. only `TIMER_RANDOM_GENERATOR` as of now).
This commit updates the `TEST_RANDOM_GENERATOR` Kconfig symbol
description to reflect and clarify that.
It also removes the `TEST_RANDOM_GENERATOR`'s dependency on
`ENTROPY_HAS_DRIVER` because the act of _allowing_ a non-random number
generator to be used does not depend on the availability of an entropy
driver -- when an entropy driver is available, by default, the
`ENTROPY_DEVICE_RANDOM_GENERATOR` will be selected; otherwise,
`TIMER_RANDOM_GENERATOR`, a non-random generator, will be selected.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
Enable Zephyr device runtime power management mechanisms in Intel GP DMA
driver. This allows Zephyr to track usage reference for power domain
gating.
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
Assigning power domain to the GP DMA.
NOTE: Only controllers 1 and 2 are under IO_0 domain, controller 0 is
under HUB-ULP domain.
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
Support for the measuring the CPU die temperature
for the ESP32 targets S2,C3. The ESP32 support
was ommited due to lack of offset calibration.
Signed-off-by: Marek Matej <marek.matej@espressif.com>
Since 6c30c9ac47 (samples: net: zperf:
Rewrite upload part to use sockets), zperf uses SO_RCVTIMEO in UDP mode,
hence must depend on/enable support for it.
Without SO_RCVTIMEO support, zperf fails like this:
> nb_packets=47 delay=188964 adjust=-13
> setsockopt error (109)
> setsockopt error (109)
> -
> Upload completed!
> LAST PACKET NOT RECEIVED!!!
> Statistics: server (client)
> Duration: 0 us (10.19 s)
> Num packets: 0 (50)
> Num packets out order: 0
> Num packets lost: 0
> Jitter: 0 us
> Rate: 0 Kbps (9 Kbps)
Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
The net_mgmt sample enables a lot of features, resulting in pretty large
image sizes for various platforms (~200k). At the same time, the
sample.yaml for the sample did not specify minimum flash requirement for
the sample, causing flash overflows during build in certain cases.
This commit fixes this by setting a reasonable flash requirement for the
sample.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
In case of errors in the status register and to
unblock Flash, it is advised to clear the errors.
Signed-off-by: Cyril Fougeray <cyril.fougeray@worldcoin.org>
In case CIS failed to be established, leave the ASE in enabling state
waiting for peer to retry.
Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
Allow enabling CDC ACM logging only if CDC ACM is not used as logging
backend. This prevents endless recursive logging loop, especially
visible when minimal footprint logging is enabled.
Fixes: #52981
Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Do these things:
- use the proper macros for reserving the SDU header
- make every L2CAP PDU fragment into 3 ACL packets
- set tx data and verify rx matches the pattern
- measure segment pool usage
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Only copy the data from the 'parent' buf into the segment buf if we
successfully acquired the HCI semaphore (ie there are available controller
buffers).
This way we avoid pulling and pushing back the data in the case where there
aren't any controller buffers available.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
When there are no buffers, it doesn't make sense to repeatedly try to send
the host TX queue.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Make the ACL fragmentation asynchronous, freeing the TX thread for sending
commands when the ACL buffers are full.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Instead of printing every audio packet (typically
arriving every 7.5 or 10ms), we now only print every 100th.
Ideally we would add support for changing the number of
"skippe" audio packets at runtime in a shell command, but
that will be postponed.
Ideally we would also have a rx_cnt per stream, but that will
also be postponed to the future, and should be fixed with e.g.
the sequence number (seq_num) as well.
Finally this commit also adds a verification if the currently
incoming data packet contains the same ts or seq_num of the
previous one, and print if it does, as this indicates that
we are receiving some invalid data.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The lc3_start_time and lc3_sdu_cnt were not reset properly,
causing it to fail when trying to do start_sine after calling
stop_sine.
This commit also ensures that the sending of the sine wave is
stopped once the stream is either released or stopped.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Commit f17630ba75
("doc: application: added description of WARN_EXPERIMENTAL setting")
introduced a new section in the Kconfig settings bit about
experimental features.
This broke the structure of the document, however, because it used the
wrong kind of section underline, resulting in a hierarchy that looks
like this:
Application Configuration
└── Kconfig Configuration
Experimental Features
└── Devicetree Overlays
when it should have looked like this:
Application Configuration
├── Kconfig Configuration
| └── Experimental Features
└── Devicetree Overlays
This falsely make it look like DT overlays are an experimental
feature!
Fix it.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
Serial speeds listed in device tree did not reflect
what driver supports.
2M and 500K were missing while
1200, 2400 and 460800 were present while not supported.
This change synchronized dts with driver code:
drivers/serial/uart_smartbond.c
Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg@codecoup.pl>
bt_le_per_adv_set_data would not accept the ad to be NULL or
the ad_len to be 0, making it impossible to set no data (which
effectively clears existing data).
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add the advertised length, and the actual length, in the log statement
so it is more clear what the issue is.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The spin loop to ensure time goes past the timeout is done in terms
of the core clock, while the spin lock is timed on the system clock.
This difference is exasperated on systems where the core clock is much
faster than the system clock and the test failed. Add a significant
multiplier so the test works even when the system clock is much slower.
Signed-off-by: Tom Burdick <thomas.burdick@intel.com>