Commit graph

15409 commits

Author SHA1 Message Date
Daniel DeGrasse
0be5dcd25d arch: arm: add MPU definitions for all flash and SRAM region sizes
Add definitions for all possible flash and SRAM region sizes for ARMv7
MPU. Also, correct some of the SRAM size checks to use <= instead of ==,
to be consistent with the remainder of the file

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-11-16 13:33:15 -05:00
TOKITA Hiroshi
9e51f1a754 drivers: sensor: mmc56x3: Fixed an error in include-guard
Fixed definitions duplicated with those in
`include/zephyr/drivers/sensor/tsl2591.h`.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2024-11-13 19:11:25 -08:00
TOKITA Hiroshi
241c7b3fb7 arch: arc: Fixed an error in include-guard
Fixed definitions duplicated with those in
`include/zephyr/arch/xtensa/arch_inlines.h`.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2024-11-13 19:11:25 -08:00
Yong Cong Sin
de3a845612 arch: riscv: add macro to access hardware registers
Add macros to read / write hardware registers.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2024-11-13 19:08:54 -08:00
Mahesh Mahadevan
7498329d59 random: remove deprecated rand32.h
Header file was kept for 2 releases, time to remove it.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-11-13 19:08:11 -08:00
Jamie McCrae
996b8a63e7 mgmt: mcumgr: Remove deprecated function smp_add_cmd_ret
Removes a function that was deprecated in Zephyr 3.4

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-11-13 09:08:18 -06:00
Jordan Yates
35295f3663 zbus: observervation -> observation
Fix a typo in the doxygen and service documentation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-11-12 12:15:55 -06:00
Jukka Rissanen
04d8b7c595 net: sockets: Cleanup socket properly if POSIX API is enabled
The sock_obj_core_dealloc() was not called if close() is called
instead of zsock_close(). This happens if POSIX API is enabled.

Fix this by calling zvfs_close() from zsock_close() and then
pass the socket number to zsock_close_ctx() so that the cleanup
can be done properly.

Reported-by: Andreas Ålgård <aal@ixys.no>
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2024-11-08 15:56:39 -06:00
Franciszek Pindel
9c94ee5346 include/zephyr: Use ROMABLE_REGION for LMA in .last_ram_section
Currently RAMABLE_REGION is used for both virtual address (VMA)
and a load address (LMA). It results in wrong LMA for some platforms.
This commits adds using ROMABLE_REGION for LMA.

Signed-off-by: Franciszek Pindel <fpindel@antmicro.com>
2024-11-08 13:57:42 -06:00
Luca Burelli
50ab6953c2 linker: llext: avoid modifying current address in linker script snippet
The linker script snippet that places the llext_no_syscall_impl section
has the unfortunate side effect of overwriting the current linker
address. This can lead to unexpected behavior of the caller script.

Saving the current address before defining the section and restoring it
afterwards avoids this issue.

Fixes #81136.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2024-11-08 13:56:57 -06:00
Marcus Penate
72534b83e4 net: lib: sntp_simple: Handle responses from previous iterations
SNTP simple runs request iterations with exponential backoff.
If the net interface is a slower connection (ie. CAT M1 modems)
then the request will be sent but the response may take time to
be received, thus causing a timeout and another request to be sent.
Because of the nature of UDP and the fact that the same socket
(source IP/port combo) is being used for both requests, a delayed
response to the first request can be received as the response to the
second request, causing -EINVAL to be returned when the timestamps
mismatch (see subsys/net/lib/sntp/sntp.c). The solution provided
retries receiving the response when the timestamp is mismatched
(without sending an additional request).

Signed-off-by: Marcus Penate <marcus.penate@ellenbytech.com>
2024-11-08 11:37:02 -06:00
Daniel Leung
eb9fc642b9 xtensa: remove mem_domain excess padding
The ptables field in arch_mem_domain for Xtensa has excessive
padding as it is incorrectly marked with needing page size
alignment. This is simply a pointer and not the actual page
table so there is no need for that alignment. So remove it.

Fixes #71896

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-11-07 11:06:23 -08:00
Arif Balik
10fa1eab50 drivers: clock: fix STM32_PERIPH_BUS_MIN for STM32U0
`STM32_PERIPH_BUS_MIN` is not the minimum bus address in `stm32u0_clock.h`

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2024-11-07 08:34:34 -06:00
Andries Kruithof
5a03d3f51c Bluetooth: Audio: Fix description for broadcast_code callback
Small mismatch between the actual procedure name and the name as
described in the doxygen documentation for the bap set broadcast
code procedure

Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>
2024-11-07 08:32:04 -06:00
Johan Hedberg
b710167f1b Bluetooth: drivers: Rename IPM to IPC
This bus type was originally created for what's today the ipc.c HCI driver.
Since this type hasn't yet been synced with BlueZ, rename it for
consistency, however leave the old define to not break backwards
compatibility with existing DT bindings (there are several more that use
"ipm" than ipc.c).

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-11-06 14:42:19 -06:00
Johan Hedberg
af3dac2131 Bluetooth: drivers: Sync bus types with BlueZ
The authoritative source of these values is BlueZ:

https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/lib/hci.h#n38

Update our values with the above. The IPM definiton doesn't exist in
BlueZ, but should be added there to make sure we don't get out of sync
again.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-11-06 14:42:19 -06:00
Daniel DeGrasse
6023d6a142 arch: common: fix copy for ramfunc region during XIP init
ramfunc region is copied into RAM from FLASH region during XIP init. We
copy from the loadaddr of the region, and were previously loading to the
symbol __ramfunc_start. This is incorrect when using an MPU with
alignment requirements, as the __ramfunc_start symbol may have padding
placed before it in the region. The __ramfunc_start symbol still needs
to be aligned in order to be used by the MPU though, so define a new
symbol __ramfunc_region_start, and use that symbol when copying the
__ramfunc region from FLASH to RAM.

Fixes #75296

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-11-06 10:19:08 -08:00
Ryan McClelland
952daca695 debug: symtab: fix ignored type qualifiers on func return type
const is ignored on the function return type. A warning is reported with
-Wignored-qualifers. Remove the ignored const.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2024-11-06 09:52:36 -08:00
Carles Cufi
94ad822a33 include: dt-bindings: regulator: nrf5x: Fix guards
Fix the include guard mismatch. Found building with clang.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2024-11-05 13:45:46 -06:00
Duy Nguyen
0a68d492e2 dts: renesas: Separate pll p q r into child node
The new update of clock device tree make the pll p q r clock
source cannot be choose by other node
This fix add 1 new dts binding for pll out p q r out line

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2024-11-05 10:54:28 -06:00
Benjamin Cabé
5c9b0a5a33 drivers: comparator: fix wrong @since tag
The Comparator API was introduced in 4.0, not 3.7

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-11-04 13:43:40 -06:00
Gerard Marull-Paretas
9925ec99fd drivers: pinctrl: nrf: add flag to signal the FAST_ACTIVE1 peripherals
This patch introduces a new flag to indicate if a peripheral belongs
to FAST_ACTIVE1 domain. This way, pinctrl knows when to request the
SLOW_ACTIVE domain (where CTRLSEL multiplexer resides).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-11-01 12:10:12 -05:00
Gerard Marull-Paretas
f3d29d6fd2 dts: bindings: power: add nordic,nrf-global-pd
Add binding for Global Power Domain found in nRF54Hx SoCs.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-11-01 12:10:12 -05:00
Joel Hirsbrunner
8d07197d6d devicetree: Remove deprecated enum macro
Remove deprecated _ENUM_TOKEN and _ENUM_UPPER_TOKEN. These are
deprecated for over three years by now.

Signed-off-by: Joel Hirsbrunner <jhirsbrunner@baumer.com>
2024-11-01 09:55:11 -05:00
Mert Ekren
193eeaef0c drivers: pinctrl: max32: fix correct configuring drive strength
This commit fixes configuring pin drive strength in pinctrl driver.
Previously, there was a mismatch while filling pincfg and checking
pincfg drive strength field. This fix simplifies the operation and
avoids gpio driver header dependency.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
Co-Authored-By: Sadik Ozer <sadik.ozer@analog.com>
2024-10-31 14:18:38 -05:00
Seppo Takalo
e96e95b6f6 net: coap: Add API to send reset message
Add helper API to construct CoAP Reset message.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2024-10-31 14:17:58 -05:00
Seppo Takalo
1890dbd637 net: lib: coap_client: Fix reset handling
Fix handling of received CoAP reset.


Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2024-10-31 14:17:58 -05:00
Seppo Takalo
4c6dd4c7b7 net: lib: coap_client: check poll() condition before retrying CoAP msg
Refactor the CoAP retry handling into the handle_poll() function,
so that we only try to send retries if the socket reports POLLOUT.

Also move the receiving into same loop, so when poll() reports POLLIN
we recv() the message and handle it before proceeding to other sockets.

Also fix tests to handle POLLOUT flag and add support for testing
multiple clients.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2024-10-31 14:17:58 -05:00
James Roy
050fa718c8 style: Inconsistent macro names changed
Fix incorrect header file pre-macro names in
'include/zephyr/shell' and 'include/zephyr/task_wdt'.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2024-10-30 08:55:36 -05:00
James Roy
3c1fb41136 style: Inconsistent macro names changed
Fix incorrect header file pre-macro names in
'include/zephyr/app_memory', 'include/zephyr/display'
and 'include/zephyr/mgmt'.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2024-10-30 08:55:36 -05:00
Sudan Landge
5030938b78 arm: linker: fix: incorrect __kernel_ram_start
What is changed?
arch32 related changes in linker script made in commit
ad71901490
are reverted.

Why do we need this change?
The main intention of the previous commit was to fix the
broken ci for aarch64.
There was no issue reported for aarch32 and changes were made for
consistency.
However, it looks like keeping the `__kernel_ram_start`
outside of the bss section works differently for different boards.
For fvp_baser_aemv8r arch32, _bss_start points to _rom_region_end and
__kernel_ram_start points to some region between _rom_region_start and
_rom_region_end which leads to test failure.
While for other board like v2m_musca_b1, _bss_start and
__kernel_ram_start are same.
The linker scripts might need a cleanup to avoid issues because of
these inconsistncies however, till we understand this better,
we need to revert this change.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2024-10-29 07:08:21 -05:00
Riadh Ghaddab
46e1635773 fs: zms: multiple fixes from previous PR review
This resolves some addressed comments in this PR
https://github.com/zephyrproject-rtos/zephyr/pull/77930

It adds as well a section in the documentation about some
recommendations to increase ZMS performance.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2024-10-29 07:07:13 -05:00
Johann Fischer
5cdabfa902 include: usb: add API version
Add API versions to all relevant USB headers.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-10-28 12:17:32 -07:00
Gerard Marull-Paretas
b5a87c7aca bluetooth: audio: bap: fix Doxygen issue
Doxygen was getting confused when expanding @kconfig (verbatim block
within []).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-10-28 12:16:16 -07:00
Gerard Marull-Paretas
a258ab32d1 doc: doxygen: remove rst utilities
We no longer render Doxygen content in Sphinx after the removal of
breathe, so let's remove rst related aliases from Doxyfile. Also adjust
some headers that contained rst content.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-10-28 12:16:16 -07:00
Aleksander Wasaznik
5f89a6b8f1 Bluetooth: Host: Add BT_TESTING trace event for ACL pool destroy
This is needed for a test to catch a double-free.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-10-26 17:13:45 +02:00
Aleksander Wasaznik
200de7c00a Bluetooth: Host: Fix bt_l2cap_chan_ops.recv -EINPROGRESS
Fix discrepancy in reference management between calls to
`bt_l2cap_chan_ops.recv` when the application returns `-EINPROGRESS`.

There are two call sites, `l2cap_chan_le_recv_sdu` and
`l2cap_chan_le_recv`, that were inconsistent.

`l2cap_chan_le_recv_sdu` moves the reference, and this patch updates
`l2cap_chan_le_recv` to do the same.

This behavior is also now documented.

This bug has existed since the introduction of this feature in
3151d26572.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-10-26 17:13:45 +02:00
Ben Booher
4a8a035bd7 drivers: sensor: dacx3608: add broadcast register for synchronized output
The dacx3608 line supports a broadcast register so all configured channels
can output a singular value, simultaneously. This drastically reduces I2C
overhead when using multi-channel control. An API addition was necessary
to support a global broadcast channel number. The API addition does not
break the write_value() implementation for other DAC drivers in the repo.
This change is based on an out-of-tree driver developed internally to
handle this use case.

Alternative to the API change, could be a KConfig option or device tree
entry. Also, no support for the Broadcast channel was added to the
channel_setup() implementation - this may or may not be confusing. I
believe it makes sense to maintain explicit setup calls for each channel
intended to be configured.

Signed-off-by: Ben Booher <benbooher@pull-repo.com>
2024-10-26 03:59:35 +01:00
Bill Waters
abca729367 driver: pwm: infineon: cyw920829m2evk_02 pwm
- Enable PWM for the cyw920829m2evk_02 board

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2024-10-26 03:57:41 +01:00
Benjamin Lindqvist
f8a7035c0a net: coap_client: signal socket error to user
Before this patch, any unexpected socket error during poll (caused by
LTE disconnects for instance) would lead to a infinite loop because the
error state was never cleared, handled or even signaled to the user.

Signed-off-by: Benjamin Lindqvist <benjamin@eub.se>
2024-10-26 03:55:20 +01:00
Dominik Ermel
87ce37f7c4 storage/stream_flash: Make context const where not modified
The commit sets const qualifier struct stream_flash_ctx *ctx parameter
of Stream Flash API calls:
  stream_flash_bytes_written
  stream_flash_progress_save
  stream_flash_progress_clear

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2024-10-25 22:45:33 +01:00
Dominik Ermel
8714c172ed storage/stream_flash: Fix range check in stream_flash_erase_page
Added check where stream_flash_erase_page checks if requested
offset is actually within stream flash designated area.

Fixes #79800

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2024-10-25 22:45:14 +01:00
Emil Gydesen
1dd59ea203 Bluetooth: Audio: Remove BT_AUDIO_BROADCAST_CODE_SIZE
Removed the LE Audio specific definition and instead
refer to the value defined by iso.h as it is ISO/Core
that defines this size, and not BAP/Audio.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-10-25 22:43:40 +01:00
Jukka Rissanen
c225b02ad5 logging: backend: websocket: Add missing header file
The log_backend_ws.h include file was missing which caused
build issues.

Fixes #80392

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2024-10-25 12:50:54 -05:00
Fin Maaß
cd3dcf788a net: socket: service: mark as unstable
As the socket service API is currently used by mutiple applications
(dhcpv4 server, dns, telnet), it should be marked as unstable,
according to the docs:
https://docs.zephyrproject.org/latest/develop/api/api_lifecycle.html

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-10-25 18:50:07 +01:00
Fredrik Danebjer
f970b066d2 Bluetooth: audio: Add possibility to use static broadcast id
Removed the generation of broadcast id inside the stack. It is now up
to the application to generate this by itself. The CAP sample has
been modified to allow either a static broadcast, or a random one.
All of this is handled in the application.

Signed-off-by: Fredrik Danebjer <frdn@demant.com>
2024-10-25 14:07:25 +02:00
Olivier Lesage
7e72d46e2e bluetooth: host: Add helper function for parsing PCTs
The 12-bit signed values for the results of PBR are a bit
cumbersome, so this adds a helper function to make it easier to work
with the HCI formatted steps.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2024-10-25 14:06:25 +02:00
Emil Gydesen
16605585c0 Bluetooth: Audio: Add bt_audio_data_get_val
Add a generic function to retrieve any data based on an
assigned numbers type. This function can in theory be
used for any data type, and not just LE Audio types, but
since it relies on bt_audio_data_parse it was made
specificially for LE Audio.

The function can be used in cases where
bt_audio_codec_cfg_get_val, bt_audio_codec_cfg_meta_get_val,
bt_audio_codec_cap_get_val or
bt_audio_codec_cap_meta_get_val (or their derivation)
are not easily applicable due to the type constrainst.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-10-25 14:01:42 +02:00
Jamie McCrae
973ba91487 mgmt: mcumgr: transport: Add LoRaWAN MCUmgr SMP transport
Adds a transport that uses LoRaWAN for receiving and responding
to messages

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2024-10-25 14:00:48 +02:00
Adam Kondraciuk
474d4c3249 arch: arm: cortex_m: pm_s2ram: Rework S2RAM mark functions
The S2RAM procedure requires marker checking after reset.
Such checking is performed on very early stage of the system initialization
and must ensure that the stack is not used due to the TLS pointer which is
not initialized yet.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2024-10-25 13:58:37 +02:00