Commit graph

118,807 commits

Author SHA1 Message Date
Lyle Zhu
1408614fd2 Bluetooth: SSP: bt_conn_unref is missing if pairing is not accepted
The `conn` is found by using function `bt_conn_lookup_addr_br()`, it
should be released by calling `bt_conn_unref()`. But `bt_conn_unref()`
is missing in the case that the pairing is not accepted.

Release the `conn` by calling `bt_conn_unref()` before exiting the
function `bt_hci_io_capa_req`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 15:02:48 +01:00
Christoph Seitz
80649dadd3 tests: net: ieee802154: Fix sockaddr_ll protocol handling in tests
Convert all sll_protocol fields to use network byte order in the tests.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-10 15:02:38 +01:00
Christoph Seitz
5340fa49a7 tests: net: socket: Add recvfrom addr validation
Add address length validation and expected source address
checks in packet socket tests.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-10 15:02:38 +01:00
Christoph Seitz
0e4cf09b55 net: sockets: Fix AF_PACKET sll_protocol in recvfrom
Convert the protocol value in return in recvfrom to
network byte order as expected.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-10 15:02:38 +01:00
Fin Maaß
b0f603cfe5 drivers: ethernet: litex: check phy-handle property
Adds a check, that the phy device in the device tree, referenced
by the phy-handle property, is enabled.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-10 15:02:26 +01:00
Bjarki Arge Andreasen
6f45f682c4 dts: arm: atmel: samx7xx21: fix flash erase-blocks
The flash erase-blocks property was a bit malformed, it has 254 pages
of size 8192 after the first 8 pages of size 2048 to reach the total
size of 2048K. This caused issues when trying to erase the last pages
of the flash, which caused the flash erase_blocks test suite to fail.

Adjust the erase-blocks to match the flash layout.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-10 15:02:16 +01:00
Bjarki Arge Andreasen
9c6195a2da drivers: flash: sam: fix flash erase last page
The implementation for erasing pages in the flash_sam.c driver
indicated a successful erase after exceeding the last page to be
erased successfully. Since the last page has no proceeding page,
the succeeded status was not set.

This fix switches around the status to be set as succeeded before
erase begins, to have the succeeded status cleared if page unlock
or erase fails.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-10 15:02:16 +01:00
TOKITA Hiroshi
70fc4a3e57 boards: pimoroni: pico_plus2: Add Pimoroni Pico Plus2 board
Pinoroni Pico Plus2 is an RP2350B based board that has
more rich I/O, RAM, and Flash than the original Raspberry Pi Pico2.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 11:20:30 +01:00
TOKITA Hiroshi
123472013a soc: raspberrypi: rp2350: Add initial support for the RP2350B
RP2350B is a rich IO variant in the RP2350 series.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 11:20:30 +01:00
TOKITA Hiroshi
5184fb9257 drivers: gpio: rpi_pico: Add support for RP2350B
As the RP2350B has more than 32 GPIO pins,
we changed the configuration so that it is split into two ports.

To do this, we created a `raspberrypi,pico-gpio-port` node and
moved the previous `raspberrypi,pico-gpio-port` functions to it.

This became a child node of `raspberrypi,pico-gpio-port`, and
`raspberrypi,pico-gpio-port` will remain a gpio mapper.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 11:20:30 +01:00
Khoa Nguyen
47655aa236 tests: drivers: uart: Add support uart_async_api for RA2
Add support uart_async_api for Renesas ek_ra2l1, ek_ra2a1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-10 11:12:20 +01:00
Torsten Rasmussen
e270fd4689 doc: document CMAKE_BUILD_PARALLEL_LEVEL and VERBOSE env variables
Sysbuild may include several images and when using ninja as build tools
then build options like `ninja -v` or `ninja -j <n>` is only consumed
by the top-level build folder, which is sysbuild itself.

CMake supports setting number of jobs or verbosity using environment
variables.

Document this feature in the Building with sysbuild section.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-03-10 11:12:07 +01:00
Torsten Rasmussen
63cf79bd99 scripts: support number of jobs and verbosity in west build.
Calling `west build --build-opt="-v" --build-opt="-j=<n>"`
passes the build options to `cmake --build ... -- <build-opt>` which
again is passed to the native build tool, such as ninja or make.

However, when ExternalProjects are used in CMake, such as in TF-M or
sysbuild builds then those extra build options are only passed to the
first image build and not those build as external projects.

CMake supports environment variables for those flags, so translate
verbosity and number of jobs to those environment variables and thereby
support those flags for all images when specified by the user.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-03-10 11:12:07 +01:00
Stefan Gloor
dbd350262f manifest: mbedtls: rename BEFORE_COLON/BC to avoid conflicts
See: https://github.com/zephyrproject-rtos/mbedtls/pull/68

Signed-off-by: Stefan Gloor <stefan.gloor@siemens.com>
2025-03-10 11:11:53 +01:00
Henrik Brix Andersen
b80ec57cf5 doc: releases: migration-guide: 4.2: mention NEORV32 version bump
Mention the move to support v1.11.1 of the NEORV32 RISC-V processor.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
1ba20d38f3 boards: others: neorv32: update openocd configuration
Update the default NEORV32 OpenOCD configuration file to avoid deprecation
warnings. Remove unnecessary nTRST signal layout.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
63c24d9d34 soc: neorv32: update to support NEORV32 v1.11.1
Update the NEORV32 SoC, peripheral drivers, and board to support NEORV32
v1.11.1. Notable changes include:

- Optional RISC-V ISA Kconfigs are now selected on the board level.
- Peripheral registers are now automatically reset in hardware, no need for
  software initialization code.
- The NEORV32 GPIO controller now supports 32 pins, not 64. Interrupt
  support will be submitted in a separate PR.
- Default board configuration has 64k RAM and is clocked at 18 MHz.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
4899cc10ac soc: neorv32: stop pretending to support multiple versions
Originally, when Zephyr support for the NEORV32 was introduced, the idea
was to support multiple version of the SoC in Zephyr as development on the
open-source RISC-V processor continued.

Unfortunately, this has proven to be much harder than anticipated in part
due to incompatible changes between NEORV32 versions and part due to the
added test burden of verifying all changes on many different versions and
configurations.

Going forward, Zephyr will support a given release of the NEORV32
processor.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
8662e0fdcb soc: neorv32: the NEORV32 does not fully support ISA A extension
The NEORV32 v1.8.6 does not fully support the RISC-V ISA A
extension. Remove it and enable support for atomic operations in C
regardless of the version used.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Hank Wang
bf369c7d30 dts: bindings: i2c: ti,tca954x-base: fix example syntax
Fix the syntax in the device tree binding example by replacing `:` with `=`
in the `compatible` property. This ensures consistency with the standard
device tree syntax.

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-03-10 11:10:57 +01:00
Camille BAUD
77dae8bf3c tests: drivers: Introduce Sitronix ST7567 Test
Introduce Sitronix ST7567 Test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-10 11:10:48 +01:00
Camille BAUD
3334a8e9cd drivers: display: Introduce Sitronix ST7567
Introduces a driver for the Sitronix ST7567 132x65 LCD driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-10 11:10:48 +01:00
Kapil Bhatt
46829bbe6b manifest: Update nrf_wifi for doc fix
Some file names are changed, fix file names in
doxygen comments.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-10 11:10:28 +01:00
James Roy
dd6022d93e dts: net: wireless: Simplify the description of the binding
Remove redundant descriptions in net/wireless bindings, such
as "This is a representation of" and "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-10 11:10:18 +01:00
James Roy
7561ba1885 dts: gpio: Simplify the description of the binding
Remove redundant descriptions in GPIO bindings, such
as "This is a representation of".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-10 11:10:06 +01:00
Graham Wacey
fb620ef59c tests: bluetooth: tester: Implement BAP/BSRC/SCC/BV-38-C
- Make ext_adv and per_adv into arrays for multiple BIGs
 - Create bap_broadcast-source_setup_v2 command
  - Handles broadcast_id as an input

Signed-off-by: Graham Wacey <graham.wacey@nordicsemi.no>
Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-03-10 11:09:57 +01:00
Michał Stasiak
658f9357b8 dts: nordic: nrf54l09: add clocks to GRTC
Added clocks to GRTC node to allow GRTC output and
access to frequency property.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-10 08:59:58 +01:00
Tim Lin
0d4f8feb6f drivers/gpio: ite: it8801: Fix the GPIO output configure issue
If the output level does not change to high or low, it should not be
changed to 0.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-03-10 08:59:46 +01:00
Chekhov Ma
c87900aa40 drivers: gpio: adp5585: fix wrong reg during pin configure
The ADP5585_GPO_OUT_MODE_A is used when configuring initial output
during pin configuration, causing pins configured HIGH is incorrectly
configured as open-drain. Replacing the reg with ADP5585_GPO_DATA_OUT
fixes the issue.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-03-10 08:59:26 +01:00
Khoa Nguyen
1df88825b5 dts: arm: renesas: ra: Remove channel_count form all ADC node
Remove channel_count form all ADC nodes of all Renesas SoCs
Update from the previous commit

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-10 08:58:52 +01:00
Khoa Nguyen
8671fdd86d drivers: adc: Remove channel_count property for Renesas driver
Currently, in Renesas adc driver, channel_count is used
as the maximum index of the channels can be supported.
However, the value input in dts of "channel_count"
represents the total number of supported channels.

After consideration, we have decided to remove this
reduntant property.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-10 08:58:52 +01:00
Lyle Zhu
0d36361b5d Bluetooth: SDP: Check data len consistency between total and received
Add fields `total_len` and `recv_len` to `struct bt_sdp_client`.

Save the total length of the response to `total_len`.
Save the received data length of the response to the `recv_len`.

Check the consistency between `total_len` and `recv_len` after all of
the response packets are received.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 08:58:38 +01:00
Alberto Escolar Piedras
ab7a6de5bb drivers/counter/counter_native_sim: Rename from counter_native_posix
Including renaming the DTS binding and kconfig options
deprecating the old one.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:37 +01:00
Alberto Escolar Piedras
7ffd698785 board native_sim: BT userchan now supports picolibc
Let's update the table

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:19 +01:00
Alberto Escolar Piedras
b2b6f3c314 Bluetooth: userchan: Support other libCs
Refactor the userchan driver into a top and a bottom part.
The bottom is the one which interacts with the host and is built
with the host libC, while the top is built with the embedded code
and whatever libC that is built with.

Errors (errno) is converted between the top and bottom to ensure they
are coherent with the local libC.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:19 +01:00
Alberto Escolar Piedras
71b9d16558 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
3ccb09ec00e291f699219c0e3f5b14b6b1c7ceb6

Which includes:
3ccb09e nsi_errno: Add new API to get the current host side errno
32eab87 Makefile: Ser a macro to distinguish build in runner context

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:19 +01:00
TOKITA Hiroshi
0f1d816c3c dts: bindings: spi: pl022: Make included reset-device.yaml
The PL022 driver has already implemented supporting reset device
behavior.
However, the support is incomplete because the `arm,pl022.yaml`,
does not contain a `reset-device.yaml`.

Add include directive to `arm,pl022.yaml` to including
`reset-device.yaml` to complete the support for reset device.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 06:52:03 +01:00
Alberto Escolar Piedras
df5318479b docs boards native_sim: Improve FUSE FS access description
The FUSE driver allows accessing a possible filesystem, independently
of the underlaying device, so let's correct the description so we do
not mix "flash" with "filesystem".

Also, one does not need to create the 'flash' folder these days. The
FUSE library will if needed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 15:26:29 +01:00
Alberto Escolar Piedras
65018e2803 docs boards native_sim: FUSE driver now supports all libCs
Now we can build the FUSE driver with any embedded libC,
so let's update the table.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 15:26:29 +01:00
Alberto Escolar Piedras
ac24d2277e native FUSE FS access: Support any libC and fix random crashes
Split the fuse FS driver into 2 parts: A top built in the embedded side,
with the embedded libC, and a bottom built in the runner side with the
host libC.
The error returns are converted to match the host libC.

Also, before the host FUSE thread, which is asynchronous to Zephyr was
calling directly into the Zephyr filesystem code, which resulted quite
often if catastrophic failures or corruption of the Zephyr state.
This is now fixed by having the FUSE thread queue requests to a Zephyr
thread, which will be handled in the embedded side in a coherent way.
This adds a slightly noticeable overhead, but the performance is still
acceptable.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 15:26:29 +01:00
Elliott Cutmore
e44a9523d4 drivers: adc: Fix ads1x4s0x driver initialised asynchronously
Definition of stack variable did not match the initialiser
reference in the driver

Signed-off-by: Elliott Cutmore <elliott.cutmore@gmail.com>
2025-03-08 08:56:33 +01:00
Manu Sutela
6c02e809c6 drivers: haptics: Fix drv2605 C++ compatibility
Add `extern "C"` guard around the function declarations in drv2605.h.
Without this guard, compiling code with a C++ compiler fails due to name
mangling issues.

Signed-off-by: Manu Sutela <manu.sutela@gmail.com>
2025-03-08 08:47:03 +01:00
Björn Bergman
d34d554d60 arch: arm: mpu: Fix BUILD_ASSERT on pointer value
Some compilers (iccarm included) does not support BUILD_ASSERT()
to check alignment of arrays.

This fix checks if an IAR compiler is used and disables the
start-alignment check if it is.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-08 08:46:43 +01:00
Alberto Escolar Piedras
43b43f5408 boards/native_sim: Deprecate timer_model.h
Deprecate this header which provides API compatibility for the
native_posix timer HW model, with planned removal in v4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Alberto Escolar Piedras
543f2da251 boards/native_sim: Deprecate native_posix_compat.h
Deprecate this header which provides API compatibility with
native_posix, with planned removal in v4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Alberto Escolar Piedras
659af7280a tests: Stop using native_posix/sim transitional headers
As native_posix has been removed, these tests do not need to support
anymore both native_sim and _posix targets, so we can stop using
the transitional headers, and APIs.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Alberto Escolar Piedras
8c8db7dd64 drivers/timer/native_posix_timer: Support only native_sim
Now that native_posix has been removed, this driver only needs to
support native_sim. Let's stop using the transitional headers which
supported both.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Georgij Cernysiov
8b7bfd45c1 drivers: ethernet: phy: sort includes
* Sort includes by groups each alphabetically:
  - standard lib
  - zephyr
  - private
* Move log registration to be after all includes.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-08 03:38:50 +01:00
Georgij Cernysiov
b55940cc23 drivers: ethernet: phy: add missing private include
Adds missing private adin phy include.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-08 03:38:50 +01:00
Georgij Cernysiov
910e3f82f8 drivers: ethernet: phy: correct adin logger name
Use phy_adin instead of undefined DT_DRV_COMPAT.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-08 03:38:50 +01:00