Commit graph

118,807 commits

Author SHA1 Message Date
Aksel Skauge Mellbye
c6689a7943 drivers: spi: gecko: usart: Support CS active high and LSB first
Enable SPI flags that are easily supportable by hardware.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-12-20 16:05:53 +01:00
Johan Hedberg
532830a1b7 Bluetooth: hci_types: Fix alignment of struct members
The convention in this file is to align the struct members vertically. This
hasn't been properly followed for some of the more recent additions, so
let's fix it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-12-20 16:05:43 +01:00
Benjamin Cabé
eacd5527aa Revert "cmake: remove enforcement of DWARF v4"
This reverts commit 9d849d92bf that seems to
be causing dozens of basic kernel test failures across various platforms.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-12-20 16:05:23 +01:00
Flavio Ceolin
86c979147d doc: migration-guide-4.1: Information about stack canaries
Add information about the changing in the stack canaries symbol behavior.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2024-12-20 12:37:20 +01:00
Flavio Ceolin
3e75c03cb2 security: Add default stack protection level
STACK_CANARIES was enabling canaries in all functions using the compiler
flag -fstack-protector-all. This became confuse with the addition of the
options STRONG and EXPLICIT.

This commit adds the missing option (default level) and disambiguous the
options mapping them close to the compiler flags.

Now we have the following options:

STACK_CANARIES            -> fstack-protector
STACK_CANARIES_STRONG     -> fstack-protector-strong
STACK_CANARIES_ALL        -> fstack-protector-all
STACK_CANARIES_EXPLICIT   -> fstack-protector-explicit

Note that from now on STACK_CANARIES_ALL is the symbol that adds canaries
for all functions.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2024-12-20 12:37:20 +01:00
Flavio Ceolin
0236f7c9aa security: Add option for explicit stack canaries
Add option to enable stack canaries only when explicitely
declared. It adds a new function attribute, __stack_protect, that
can be used to enable stack protection in a function.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2024-12-20 12:37:20 +01:00
Flavio Ceolin
82ace41da4 security: Additional option for stack canaries
Previously, when stack canaries were enabled, Zephyr applied this
protection to all functions. This commit introduces a new option that
allows stack canary protection to be applied selectively to specific
functions based on certain criteria.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2024-12-20 12:37:20 +01:00
Stefan Schwendeler
5929677d7a drivers: led_strip: ws2812_i2s: Adds dependency to i2s-device
Removes the ugly `i2s-dev` property and uses its parent I2S bus device.

Signed-off-by: Stefan Schwendeler <Stefan.Schwendeler@husqvarnagroup.com>
2024-12-20 12:37:09 +01:00
Fabrice DJIATSA
c122cf3bdb boards: st: add support for nucleo_c071rb board
- add devicetree for nucleo_c071rb
- add board configurations files
- add documentation

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-12-20 12:37:00 +01:00
Fabrice DJIATSA
0ef33f3e77 dts: arm: st: add stm32c071 dtsi files
- provide support for the STM32C071 serie
- add stm32g0-flash-controller compatible on flash node
to fix CI issue on undefined reference to
`flash_stm32_page_layout'

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-12-20 12:37:00 +01:00
Fabrice DJIATSA
12703bf633 soc: st: stm32: add soc for stm32c071
select soc for stm32c071 and irq configuration

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-12-20 12:37:00 +01:00
Fabrice DJIATSA
626ff5bd9a west.yml: update hal_stm32 to the latest version
It introduces *-pinctrl.dtsi files for the C071XX
STM32 series, which will help to fix a CI problem
encountered.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-12-20 12:37:00 +01:00
Benedikt Schmidt
9d849d92bf cmake: remove enforcement of DWARF v4
Remove the enforcement of DWARF v4 as pyelftools is able
to parse DWARF v5.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-12-20 12:36:46 +01:00
Benedikt Schmidt
895db44388 scripts: logging: dictionary: fix parsing of DWARF v5
Fix parsing of DWARF v5 in database_gen.py.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-12-20 12:36:46 +01:00
Benedikt Schmidt
d7574e5f44 soc: add DWARF v5 sections to linker scripts
Add the DWARF v5 sections to the linker scripts of
imx, imxrt, acp_6_0 and xtensa_sample_controller.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-12-20 12:36:46 +01:00
Johann Fischer
d9cca5c61a boards: decawave_dwm3001cdk: remove CDC ACM configuration
This board has a built-in debug adapter that provides a serial
connection to the host. This is mentioned in the board documentation.
The SoC pins P0.15 (RX) and P0.19 (TX) are connected to the debug
adapter pins TXD and RXD, respectively. This board should not configure
any other serial connection by default.

Update the board documentation accordingly.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-12-20 12:36:31 +01:00
Johann Fischer
59a7b972a2 doc: porting: add note about CDC ACM UART configuration
Clarify how to configure serial output for the console for the two most
common cases. Follow up on commit 0cae816b27
("boards: add common configuration for CDC ACM UART")

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-12-20 12:36:31 +01:00
Tim Lin
2821a9e588 test/driver/build_all: Modify the dts configure example of board for it8801
Modify the board file when using gpio, input and pwm drivers dts
configuration example for it8801.

test: west build -p always -b it82xx2_evb tests/drivers/build_all/gpio
      west build -p always -b it82xx2_evb tests/drivers/build_all/input
      west build -p always -b it82xx2_evb tests/drivers/build_all/pwm

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-12-20 12:36:21 +01:00
Tim Lin
c700422837 dts: ite: Move common it8801 configurations to a shared include file
Extracted common it8801 configuration into a new it8801-common-cfg.dtsi

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-12-20 12:36:21 +01:00
Arif Balik
f5305717c4 boards: st: fix twister test failure for stm32u083c_dk
Test "drivers.gpio.1pin.aw9523b" fails on stm32u083c_dk platform
because "arduino_i2c" definition does not exists in the device tree
of stm32u083c_dk board. Also updated the baord yaml

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2024-12-20 10:19:38 +01:00
Emil Gydesen
6bcfdaf37a Bluetooth: ISO: Add support for cis_established_v2 in host
Add support for the bt_hci_evt_le_cis_established_v2 event in
the host.

This provided additional information to the host and application
about the CIS paramters. Especially the peripheral gets new an
important information such as the SDU size and interval.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-12-20 10:19:23 +01:00
Maochen Wang
f6b3a022a9 tests: net: wifi: update DPP extra confis
Remove CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE from DPP build
case.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2024-12-20 10:19:14 +01:00
Maochen Wang
9e77fd3491 hostap: fix build error when disable enterprise mode
In Kconfig, already check both dpp and enterprise mode for enable
NO_CONFIG_BLOBS, so remove the wrong one in the cmakelist.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2024-12-20 10:19:14 +01:00
Maochen Wang
9bb15251a8 drivers: wifi: nxp: remove SAP IPv4 address when stopped
Start and stop SAP, the IPv4 address is not removed, if then use STA
mode to connect to EXT-AP with same gateway address as the stopped
SAP, STA will not get the DHCP IPv4 address, as the DHCP offer packet
is dropped due to detect of IPv4 address conflict. Removing SAP IPv4
address when stopped SAP can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2024-12-20 10:19:03 +01:00
Stine Akredalen
8df332714b bluetooth: mesh: health_cli: Add callback to pull msg for periodic pub
The Health Client model supports periodic publication and thus requires
the update callback to be initialized.

This commit implements a callback inside the health client model and
adds a wrapper to it so that the user can fill up the msg buffer.
This way, the Config Server will always accept
Config Model Publication Set message with periodic publication
parameters. If the users callback returns an error or is not
implemented, the periodic publication will be aborted.

Signed-off-by: Stine Åkredalen <stine.akredalen@nordicsemi.no>
2024-12-20 10:18:54 +01:00
Jilay Pandya
3202773b11 drivers: auxdisplay: jhd1313: fix Out-of-bounds read
fix out of bounds read by doing the comparison with ARRAY_SIZE correctly

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2024-12-20 10:18:36 +01:00
Hao Luo
b56aa0e823 drivers: timer: separate ambiq stimer comparator interrupts
Separate ambiq stimer comparator interrupts to handle the errata

Signed-off-by: Hao Luo <hluo@ambiq.com>
2024-12-20 08:33:22 +01:00
Richard Wheatley
c6012bb619 boards: ambiq: fix formatting
fix formatting in dts file

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2024-12-20 08:33:22 +01:00
Richard Wheatley
745444ea25 drivers: timer: ambiq stimer errata updates
apx needs to set compare b due to errata of XTAL glitch
ap4p needs to set minimum delta to 4
err026 requires XTAL to not be switched off/on when resetting

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2024-12-20 08:33:22 +01:00
Dmitrii Golovanov
33a91daf3b tests: benchmarks: wait_queues: Record metrics
Enhance the wait_queue benchmark to output resulting summary
metrics as records, so when it runs with Twister the results
are parsed and saved into twister.json and recording.csv files
for further analysis.
Minor documentation edits and make ClangFormat happy.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-12-20 08:33:14 +01:00
Dmitrii Golovanov
422c9d6c7b tests: benchmarks: wait_queues: Turn off verbose output
Turn off verbose output by default as described in the README.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-12-20 08:33:14 +01:00
Dmitrii Golovanov
f3358259d6 tests: benchmarks: sched_queues: Record metrics
Enhance the sched_queue benchmark to output resulting summary
metrics as records, so when it runs with Twister the results
are parsed and saved into twister.json and recording.csv files
for further analysis.
Minor documentation edits and make ClangFormat happy.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-12-20 08:33:14 +01:00
Dmitrii Golovanov
2fd8abef7f tests: benchmarks: sched_queues: Turn off verbose output
Turn off verbose output by default as described in the
README.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-12-20 08:33:14 +01:00
Mariëlle Korthout
f5d71a3db3 tests: build_all: Add HS400x
Adds HS400x to build_all tests
Signed-off-by: Mariëlle Korthout <marielle.korthout.jc@renesas.com>
2024-12-20 03:18:19 +01:00
Mariëlle Korthout
4fa94f6742 drivers: sensor: Add HS400x driver
Adds Renesas HS400x temperature and humidity sensors driver.
Signed-off-by: Mariëlle Korthout <marielle.korthout.jc@renesas.com>
2024-12-20 03:18:19 +01:00
Pisit Sawangvonganan
997f6d4949 drivers: eeprom: at2x: remove orphaned k_mutex_unlock
Remove orphaned `k_mutex_unlock` in `eeprom_at25_read` as
the lock/unlock pair is handled in `eeprom_at2x_read` instead.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-12-20 03:17:52 +01:00
Pisit Sawangvonganan
3a67013ef1 drivers: eeprom: at2x: remove '&' when assigning init_fn
To maintain consistency in `init_fn` parameter passing,
remove the address-of operator ('&') when assigning the `init_fn`
function pointer in the `DEVICE_DT_INST_DEFINE` macro.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-12-20 03:17:52 +01:00
Gerard Marull-Paretas
b51f998063 tests: fix zephyr/drivers/gpio.h usage
Only include the header if using any of the GPIO API calls/
struct/defines.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2024-12-20 03:17:25 +01:00
Gerard Marull-Paretas
179576d059 tests: add missing CONFIG_GPIO=y
All tests using the GPIO API must enable the CONFIG_GPIO Kconfig
option.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2024-12-20 03:17:25 +01:00
Pete Skeggs
6ec5729a3d net: lib: tls_credentials: return size required
If either no buffer is provided or the size of it
is too small, return the required length.

Signed-off-by: Pete Skeggs <peter.skeggs@nordicsemi.no>
2024-12-20 03:17:10 +01:00
Fabio Baltieri
b33b3b17f7 soc: st: warn if running with debug on sleep enabled
Add a compiler warning when building for an STM32 series MCU with PM
enabled but STM32_ENABLE_DEBUG_SLEEP_STOP=y. That option greatly
increases the power consumption during sleep, which is probably
undesirable when building with PM=y, and it can be activated silently
as a side effect of other options (namely RTT) making it tricky to find
out.

Add a warning to expose the situation.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-12-20 00:50:10 +01:00
Keith Packard
7962dcb288 picolibc: Disable LTO while building picolibc bits
The compiler requires that much of the C library be built without using LTO
so that various symbols are available for use by generated code, including
things like memset and memcpy.

Add -fno-lto when building both picolibc itself as well as the Zephyr
interface bits.

Closes: #81674

Signed-off-by: Keith Packard <keithp@keithp.com>
2024-12-20 00:49:56 +01:00
Daniel Leung
f786ecc075 tests: mem_protect/mem_map: add data cache manipulations
This adds data cache manipulations, flushing and invalidation,
to the tests where buffer content are being written and
compared. These tests map different virtual pages to the same
physical pages, and write to one of the mapped virtual
addresses. Some SoCs may cache the virtual address separately
and writes to one virtual address will not be reflected to
another virtual address, this failing the comparison. So we
need to manually flush the cache after writing to the buffer,
and invalidating cache before reading. Note that not all reads
and writes need this treatment as some of them only needs to
test for access permissions, and not the memory content.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-12-19 21:54:16 +01:00
Daniel Leung
352fed6b21 tests: mem_protect/mem_map: limit CPUs to 1 if incoherent cache
For CPUs with incoherent cache under SMP, the tests to read/write
buffer (... majority of tests here) may not work correctly if
the test thread jumps between CPUs. So use the test infrastructure
to limit the test to 1 CPU.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-12-19 21:54:16 +01:00
Flavio Ceolin
292d6885f2 cmake: Remove deprecated code
to_hex() and from_hex() are deprecated since v3.5.0. Time
to remove them.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2024-12-19 21:53:55 +01:00
Yishai Jaffe
9396c42262 dts: arm: st: f4: fix die_temp channel
The STM32F4 socs have different channels for the temperature sensor.
Some are at channel 16 and some at channel 18. Made changes wherever it
was relevant.
In short, the base configuration is to channel 16 and wherever it is
supposed to be 18 it is overridden.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-19 21:53:35 +01:00
Yishai Jaffe
2b4a83227c dts: arm: st: added sensor aliases
Added aliases to nucleo_l4r5zi/stm32f4_disco/stm32f411e_disco for
die_temp die_temp/vref/vbat nodes so that the die_temp_polling
and soc_voltage samples work for them.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-19 21:53:28 +01:00
Jilay Pandya
293dc0c061 doc: release notes: 4.1: ti, drv8424 stepper driver added
- add entry about new stepper driver ti, drv8424

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2024-12-19 21:53:17 +01:00
Immo Birnbaum
d789f339ef soc: xlnx: zynq7000: remove PS GPIO controller's static memory mapping
Remove the PS GPIO controller's static MMU region entry from the
mmu_regions table for both the XC7Zxxx and XC7ZxxxS variants of the
Zynq 7000.

The PS GPIO controller's device driver has been switched over to
using a named DEVICE_MMIO mapping.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2024-12-19 19:56:23 +01:00
Immo Birnbaum
fef27d8231 drivers: gpio: xlnx_ps: switch driver over to DEVICE_MMIO mapping
Set up a named device MMIO memory mapping in the GPIO controller's
parent device, map the virtual memory in the init function of the
parent device.

Once the controller's register space has been successfully mapped,
propagate the mapped virtual address to all child (= GPIO bank)
devices. While it is possible to add a named mapping to every
single GPIO bank device and initialize it in the respective bank
device's init function, this would result in multiple virtual
address mappings all pointing to the same 4k of physical memory.
I assume that, although all those mappings having the same attri-
butes, such a setup is at least discouraged.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2024-12-19 19:56:23 +01:00