Move the can_sja1000.h header file to the public
include/zephyr/drivers/can/ include path. This allows writing out-of-tree
SJA1000 based driver front-ends.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Rename the can_utils_filter_match() utility function to
can_frame_matches_filter(), move it to the public
include/zephyr/drivers/can.h header file, and add a missing mismatch for
standard (11-bit) ID frames passing extended (29-bit) filters.
This allows using the utility function in out-of-tree CAN drivers.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Commit d823f88e3b ("kernel: move _static_thread_data to ROM") intended to
remove init_abort member from `struct _static_thread_data`, but instead it
just removed it from Z_THREAD_INITIALIZER() initializer.
Remove init_abort, which is a leftover.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
Fixes the return value descriptions for functions isotp_recv() and
isotp_recv_net() as they mistakenly referred to ISOTP_WAIT_TIMEOUT
instead of ISOTP_RECV_TIMEOUT.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
* Add a flexible Hashmap API
* Add a Separate-Chaining Hashmap Implementation
* Add a Open-Addressing Linear Probe Hashmap Implementation
* Add a C-Wrapper for `std::unordered_map` for benchmarking
Signed-off-by: Chris Friedt <cfriedt@meta.com>
* remove previous `LOG2CEIL()` from `<zephyr/toolchain/common.h>`
- `LOG2CEIL()` is not used in-tree by any C or C++ source
- only used are in `.ld` files
- however, it is built-in to both GNU and LLVM linkers
* sys: util: provide LOG2() and LOG2CEIL() macros
- calculate `log(x)` and `ceil(log(x))`, respectively
- both are compile-time `const` / ok for `constexpr`
- also runtime efficient with `__builtin_clz()`
- `LOG2()`, `NUMBITS()`, and `IS_POWER_OF_TWO()` macros
contributed by @JordanYates
- `LOG2CEIL()` contributed by @oyvindronningstad
* sys: util: provide Next-Highest Power-of-Two macro `NHPOT()`
- calculate `next = pow(2, ceil(log(x)/log(2)))`
- leverages `LOG2CEIL()`
Signed-off-by: Chris Friedt <cfriedt@meta.com>
Various functions, mostly concerning time-series cache, were not
using const pointer while they still did not modify the content.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
The fuel gauge API doesn't make use of syscalls with device drivers, which
is not congruent with Zephyr's security model.
Correct the fuel gauge API to only allow access to fuel gauge device
drivers functionality via syscalls to keep with Zephyr's security model.
Signed-off-by: Aaron Massey <aaronmassey@google.com>
Fuel gauge API struct type is currently named battery_driver_api, this is
inaccurate as the API struct represents functions for interacting with fuel
gauge drivers in particular.
Rename the API struct type to fuel_gauge_driver_api to clearly signal its
functionality.
Signed-off-by: Aaron Massey <aaronmassey@google.com>
LEGACY_INCLUDE_PATH has been defaulting to "n" and marked as deprecated
in both v3.2 and v3.3. Drop the option entirely for v3.4.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Introduce an optional hook to be called when the CPU is made idle.
If needed, this hook can be used to prevent the CPU from actually
entering sleep by skipping the WFE/WFI instruction.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Implement the CAP initiator broadcast audio start procedure.
This basically just verifies that the stream context
is set in the metadata, and then calls the BAP
procedure.
We define a new opaque struct, bt_cap_broadcast_source,
that is just an abstraction of the bt_audio_broadcast_source
but is used to indicate that these functions require a
broadcast source created by the CAP function (and not the
BAP) function.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This patch adds an end-of-list marker to net_request_wifi_cmd to make it
easier to expand on it.
Signed-off-by: Maximilian Deubel <maximilian.deubel@nordicsemi.no>
Add BT_AUDIO_PD_MAX and BT_AUDIO_PD_PREF_NONE to
better define the value range (and unit) of the
presentation delay.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
net_ipv4_is_ll_addr() did not use a proper subnet mask to filter first
two bytes, therefore it could lead to incorrect results. This commit
fixes it.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Looks like some implementors decided not to implement the full set of
PMP range matching modes. Let's rearrange the code so that any of those
modes can be disabled.
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Let's honor CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT even for kernel
stacks. This saves one global PMP slot when creating the guard area for
the IRQ stack, and some hw implementations might require that anyway.
With this changes, arch_mem_domain_max_partitions_get() becomes much
more reliable and tests/kernel/mem_protect is more likely to pass even
with the stack guard enabled.
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Bluetooth SIG published at
https://www.bluetooth.com/specifications/assigned-numbers/ the Assigned
Numbers Document that contains normative list of 16-bit UUID.
Missing 16-bit UUIDs for GATT Services, GATT Descriptors and GATT
Characteristics added to uuid.h according to the revision 2023-02-13
of the document.
Signed-off-by: Alexander Chudov <chudov@gmail.com>
linear_range_get_win_index does not behave correctly when the
window of values is above the linear range. It reports
-ERANGE (partial intersection) instead of -EINVAL.
Extra conditions added for edge cases and tests cases updated.
Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
When compiler is more strict it triggers a warning that
'swap' argument is not used in arch_isr_direct_footer().
Adding ARG_UNUSED.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
In file `include/zephyr/bluetooth/crypto.h` update the documentation for
the parameters related to the Additional Authentificated Data `aad` and
`aad_len` of functions `bt_ccm_decrypt` and `bt_ccm_encrypt`. It was using
the term `Additional input data`, it has been replaced by the term used in
the RFC linked in the functions description, `Additional authenticated
data`.
Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
Add a callback for READ request to download files with arbitrary length.
Define TFTP_BLOCK_SIZE in API header for application to allocate buffer.
Signed-off-by: Jun Qing Zou <jun.qing.zou@nordicsemi.no>
This commit adds access to the string values without a quotes.
Signed-off-by: Radosław Koppel <r.koppel@k-el.com>
Co-authored-by: Marti Bolivar <marti.bolivar@nordicsemi.no>
Only the receiver of the audio is allowed to send the
receiver start ready command.
Furthermore, this removes the automated transition to the
streaming state on the server, as the server now shall
call bt_audio_stream_start to put the stream into the
streaming state.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The bt_audio_stream.audio_iso is something we only use for the
unicast client, and will only be set by the unicast client
operatiosn.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
New event LWM2M_RD_CLIENT_EVENT_REG_UPDATE to indicate
application that engine starts registration update.
Signed-off-by: Juha Ylinen <juha.ylinen@nordicsemi.no>
Modify dai_config_get function to have the config struct as argument.
This was not a showstopper but a request in the API review.
In the same patch modify all Intel dai drivers using the API to preserve
bisect/compile.
Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
Change the DT_FOREACH_PROP_ELEM_SEP example documented to use the
correct macro GPIO_DT_SPEC_GET_BY_IDX() instead of
GPIO_DT_SPEC_BY_IDX().
Signed-off-by: Keith Short <keithshort@google.com>
During the requesting state, ignore NAKs from any
non-requesting server. This gives the requesting
server a chance to ACK the request.
Signed-off-by: Ryan Erickson <ryan.erickson@lairdconnect.com>