Commit graph

118,807 commits

Author SHA1 Message Date
Vinayak Kariappa Chettimada
745810c4ce Bluetooth: Controller: Fix connection event busy check
Fix connection event busy check when peripheral role is
using minimal time reservation.

Peripheral and Central have a anchor point sync if the
Peripheral has successfully transmitted once to the Central.

Fixes commit cadef5a64f ("Bluetooth: Controller: Introduce
BT_CTLR_PERIPHERAL_RESERVE_MAX")'.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-02-05 08:16:30 +01:00
Duy Nguyen
633c5afb07 driver: eth: Fix phy-connection-type setting on RA8 ethernet
This commit fix the pin function configuration for mii and rmii
setting of Renesas RA8 ethernet driver
Correct pin function setting for mii is
PFENET = (uint8_t)(0x1 << R_PMISC_PFENET_PHYMODE0_Pos);
and rmii is:
R_PMISC->PFENET = (uint8_t)(0x0 << R_PMISC_PFENET_PHYMODE0_Pos);
Change code to intialize ping in driver init function, change
method of getting and checking via enum index of device tree.
Add build assert for invalid phy type.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-02-05 08:16:02 +01:00
Tom Hughes
81f5581a86 tests: kernel: thread_apis: Fix -Wsometimes-uninitialized warning
Building kernel.threads.apis with clang warns:

tests/kernel/threads/thread_apis/src/main.c:362:6: error: variable 'ret'
is used uninitialized whenever 'if' condition is true
[-Werror,-Wsometimes-uninitialized]
        if (m == ISR_ALREADY_EXIT || m == ISR_RUNNING) {
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/kernel/threads/thread_apis/src/main.c:380:6: note: uninitialized
use occurs here
        if (ret != 0) {
            ^~~
tests/kernel/threads/thread_apis/src/main.c:362:2: note: remove the 'if'
if its condition is always false
        if (m == ISR_ALREADY_EXIT || m == ISR_RUNNING) {
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/kernel/threads/thread_apis/src/main.c:362:6: error: variable 'ret'
is used uninitialized whenever '||' condition is true
[-Werror,-Wsometimes-uninitialized]
        if (m == ISR_ALREADY_EXIT || m == ISR_RUNNING) {
            ^~~~~~~~~~~~~~~~~~~~~
tests/kernel/threads/thread_apis/src/main.c:380:6: note: uninitialized
use occurs here
        if (ret != 0) {
            ^~~
tests/kernel/threads/thread_apis/src/main.c:362:6: note: remove the '||'
if its condition is always false
        if (m == ISR_ALREADY_EXIT || m == ISR_RUNNING) {
            ^~~~~~~~~~~~~~~~~~~~~~~~
tests/kernel/threads/thread_apis/src/main.c:329:9: note: initialize the
variable 'ret' to silence this warning
        int ret;
               ^
                = 0

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-02-05 05:40:51 +01:00
Toon Stegen
7b09ccedf3 doc: tracing: fix typo sys_trace_named_event
fix typo in tracing documentation

Signed-off-by: Toon Stegen <toon@toostsolutions.be>
2025-02-05 05:40:44 +01:00
Vixay Phimmasane
8119951283 ci: fix typo in coding_guidelines.yml
Typo fix: Guidelines

Signed-off-by: Vixay Phimmasane <visuphi@gmail.com>
2025-02-05 01:16:24 +01:00
Alberto Escolar Piedras
4bfd8e5378 doc: release: 4.1: Fix trivial typo
Fix a silly typo.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-02-05 01:16:13 +01:00
Stephan Linz
98cf437d7a drivers: sensor: maxim,ds3231: avoid compilation error
As the C language treats 'cases' similar to 'labels' the following
error can also occur when using switch statements when it encounters
a declaration immediately after a label:

drivers/sensor/maxim/ds3231/ds3231.c:77:3: error: a label can only
        be part of a statement and a declaration is not a statement
   77 |   const uint16_t raw_temp = data->raw_temp;
      |   ^~~~~

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-02-05 01:16:03 +01:00
Stephan Linz
cca2053448 drivers: rtc: maxim,ds3231: avoid compilation error
Because of wrong integer type syntax following error occurred:

drivers/rtc/rtc_ds3231.c:361:76: error: unknown type name 'u'
  361 | static int rtc_ds3231_alarm_get_supported_fields(
      |                    const struct device *dev, u int16_t id,
      |                                              ^

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-02-05 01:16:03 +01:00
Stephan Linz
2a793cf0f8 drivers: rtc: maxim,ds3231: avoid warnings about unused code
Compile warnings occurred in common standard use case
w/o RTC alarm and update.

Warning was:

drivers/rtc/rtc_ds3231.c: In function 'rtc_ds3231_init':
drivers/rtc/rtc_ds3231.c:808:33: warning: unused variable 'data'
                 [-Wunused-variable]
  808 |         struct rtc_ds3231_data *data = dev->data;
      |                                 ^~~~
drivers/rtc/rtc_ds3231.c: At top level:
drivers/rtc/rtc_ds3231.c:195:12:
        warning: 'rtc_ds3231_get_ctrl_sts' defined but not used
                 [-Wunused-function]
  195 | static int rtc_ds3231_get_ctrl_sts(const struct device *dev,
      |                                    uint8_t *buf)
      |            ^~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-02-05 01:16:03 +01:00
Luca Burelli
d45489902f MAINTAINERS: add Arduino category
Add Arduino category to MAINTAINERS.yml file.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-02-05 01:15:44 +01:00
Jilay Pandya
089e00d691 docs: migration-guide: 4.1 tmc5041 renamed to tmc50xx
migration guide entry after renaming tmc5041 to tmc50xx

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-02-05 01:14:47 +01:00
Jilay Pandya
8272b36b5b drivers: stepper: tmc50xx: extend tmc5041 to tmc50xx
Extend tmc5041 to tmc50xx in order to accomodate tmc5072

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-02-05 01:14:47 +01:00
Carles Cufi
17a671ca00 scripts: runners: nrf: Default to soft reset for the nRF52 series
The Nordic nRF52 series have a peculiarity that is not shared with any
other Nordic families of SoCs: the reset pin can be reconfigured as a
regular GPIO. This has an unintended consequence: if the user has
reconfigured the pin in Devicetree to be a GPIO, `west flash` will
override that and configure the IC to use it as a reset pin, and the
firmware at boot won't be able to switch it back to GPIO, because that
requires a UICR erase. This behavior is very confusing to users, because
the GPIO does not work at all, since it is now just a reset line.

With this patch, `west flash` defaults to using soft reset instead of
pin reset for the nRF52 family of devices, to avoid overwriting the
reset pin configuration that the user includes in the image.

In order to be able to continue to use pin reset for users that so
desire it, a new option `--pinreset` is added that forces the use of pin
reset. The existing `--softreset` option is left exactly as it was, but
it is now applicable only to families other than the nRF52.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-02-05 01:13:42 +01:00
Rick Cai
a316ca9fae boards: shields: Add support for Abrobot esp32c3 oled board
Abrobot esp32c3 oled only works with sh1106_compatible display driver.
It does not support 1306 display driver commands.
Its screen resolution is 72x40.
Its screen start position is 30, 12.

Signed-off-by: Rick Cai <wwhheerree@hotmail.com>
2025-02-05 01:13:25 +01:00
Ilia Kharin
a0fddf6050 drivers: display: st7789v: Improve error handling
Add return error handling and logging in the driver in order to ease
debugging.

Signed-off-by: Ilia Kharin <akscram@gmail.com>
2025-02-05 01:13:12 +01:00
Peter Mitsis
11f69fb686 tests: Fix thread_metric message processing
Changes the type of both the tm_message_sent and tm_message_received
arrays from 'unsigned long' to 'unsigned int'. The test expects those
arrays to be 16 bytes long. This was a problem on 64-bit platforms
as 'unsigned long' is 8 bytes, which made the arrays 32 bytes long.
On both our supported 32-bit and 64-bit platforms, 'unsigned int'
works out to be 4 bytes long, thereby giving us the requisite 16
byte buffer.

Although a case could be made for using 'uint32_t', this was not
chosen simply to keep the structure as close as practical to the
original thread_metric implementation.

Fixes #83864

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-02-05 01:12:52 +01:00
Måns Ansgariusson
c01ba39070 tests: rtc_api: Disable update callback after test completion
The update callback remains enabled after the test finishes, leaving the
RTC in a modified state. This change ensures the callback is properly
disabled, restoring the RTC to its original condition.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-02-05 01:12:41 +01:00
Måns Ansgariusson
535814a731 tests: rtc: add epson rx8130ce to rtc build test
Include the Epson RX8130CE RTC driver in the RTC build tests to ensure it
compiles correctly and remains free of build regressions.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-02-05 01:12:41 +01:00
Måns Ansgariusson
36b3e9285d drivers: rtc: Add support for Epson RX8130CE RTC driver
This commit introduces a driver for the Epson RX8130CE rtc.
The driver provides the following functionalities:

- Time setting and retrieval
- Periodic update interrupt support (1Hz)
- Alarm setting and retrieval (minute, hour, day)
- Frequency output control (32.768kHz, 1.024kHz, 1Hz, off)
- Power management (automatic power switching & battery charging)
- Calibration setting and retrieval

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-02-05 01:12:41 +01:00
Marek Matej
b58c424946 samples: Simplify ESP32 overlays moving to socs
Move overlays and conf from boards to socs in following samples :

- samples/drivers/adc/adc_dt
- samples/drivers/counter/alarm
- samples/drivers/dac
- samples/subsys/settings

Signed-off-by: Marek Matej <marek.matej@espressif.com>

add more samples

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-02-05 01:12:26 +01:00
Iuliana Prodan
47839f8e34 drivers: mbox: imx: allow sending empty message
Allow sending empty messages - with size 0 or
msg data NULL.
In some cases these kind of messages are just an ack
(for example, in openamp_rsc_table sample).

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-02-05 01:12:17 +01:00
Michał Stasiak
a71f042a36 drivers: pwm: nrfx: 0/100% duty for PWM120
Fast PWM120 prevents GPIO from driving pin with low/high
state when PWM duty is 0% or 100%. In such case, regular
PWM signal generation needs to be used.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-02-05 01:12:02 +01:00
Yishai Jaffe
a5fd92b0ab samples: fade_led: use all available LEDs
Refactored the sample code to use all available PWM LEDs

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-02-05 01:11:48 +01:00
Aziz Sellami
02b2d5563c drivers: counter: gpt: fix init sequence
The current code is enabling the IRQ before calling the GPT_Init()
function which (beside being incorrect by design) opens the door to a
spurious irq to cause the isr function call before the init.  This
corner case can be easily observed for example when running the code
inside a hypervisor/jailhouse where restarting the cell without
previous proper exit (device deinit) can cause a crash (null pointer
dereference) when an IRQ is triggered before the init.

Signed-off-by: Aziz Sellami <aziz.sellami@nxp.com>
2025-02-04 20:26:37 +01:00
Marouen Ghodhbane
c7d9cc1f47 drivers: counter: tpm: fix init sequence
The current code is enabling the IRQ before calling the TPM_Init()
function which (beside being incorrect by design) opens the door to a
spurious irq to cause the isr function call before the init.  This
corner case can be easily observed for example when running the code
inside a hypervisor/jailhouse where restarting the cell without
previous proper exit (device deinit) can cause a crash (null pointer
dereference) when an IRQ is triggered before the init.

Signed-off-by: Marouen Ghodhbane <marouen.ghodhbane@nxp.com>
2025-02-04 20:26:37 +01:00
Sean Madigan
8cff70a95d bluetooth: host: Add PSA returns to debug prints
Recently I have had to debug issues with PSA and having
the returns values from PSA is very useful in order to
find the root cause of the issue.

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-02-04 15:05:50 +00:00
Aurelie Fontaine
262008a4a4 drivers: sensor: icm42670: fix serif type
Fix correct use of serif_type if the driver is compiled with both SPI
and I2C enabled by storing it in device config.

Signed-off-by: Aurelie Fontaine <aurelie.fontaine@tdk.com>
2025-02-04 15:05:40 +00:00
Fabio Baltieri
72c02b3ba5 actions: manifest: use a manifest specitic dnm label
Reconfigure the manifest action to use a manifest specific DNM label, so
that the "DNM" one can be used by humans.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-02-04 15:05:20 +00:00
Carles Cufi
706689b376 scripts: runners: nrf: Fix missing kind in erase operations
Commit dc7d8bb introduced the requirement to provide the erase kind when
executing the corresponding op, but it was forgotten in this particular
spot.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-02-04 15:01:36 +01:00
Sean Madigan
706938d7b2 bluetooth: controller: Only BT_CTLR_ECDH default y if BT_HCI_RAW
In https://github.com/zephyrproject-rtos/zephyr/pull/84268
the ability to use the controller for ECDH was removed from
the host.

This means that BT_CTLR_ECDH is now only useful when using
BT_HCI_RAW.

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-02-04 15:01:22 +01:00
Khaoula Bidani
fa2a3c39ff drivers : flash: replace dt_nodelabel_has_prop()in xspi
Replace dt_nodelabel_has_prop() with
dt_compat_any_has_prop() in Kconfig.stm32_xspi

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-02-04 15:01:13 +01:00
Khaoula Bidani
cd004dd84f drivers : flash: replace dt_nodelabel_has_prop()in qspi
Replace dt_nodelabel_has_prop() with
dt_compat_any_has_prop() in Kconfig.stm32_qspi

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-02-04 15:01:13 +01:00
Khaoula Bidani
0c9c6014fa drivers : flash: replace dt_nodelabel_has_prop()
Replace dt_nodelabel_has_prop() with
dt_compat_any_has_prop() in Kconfig.stm32_ospi

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-02-04 15:01:13 +01:00
Yong Cong Sin
f840a35be3 logging: log_cmds: init uninitialized backend on log_go()
For backends that do not autostart themselves, initialize
& enable them on `log backend <log_backend_*> go`, so
that they function properly.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-02-04 15:00:58 +01:00
Yong Cong Sin
8dd9d924fe logging: init backend id regardless of autostart
The `id` is basically a compile-time constant. Setting it every
time the backend is enabled is unnecessary. Instead, set it on
`z_log_init()` regardless of whether or not it requires to be
`autostart`ed.

Fixes an issue where the `filter_get`/`filter_set`
accessed the wrong index and displayed the wrong log level when
user accesses the status of an uninitialized backend via:
`log backend <uninitialized_backend> status`.

Also fixes an issue when user tries to list the backends via:
`log list_backends`, where all uninitialized backends will have
ID = 0.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-02-04 15:00:58 +01:00
Francois Ramu
676c3d2dbb west.yml : update modules/tee/tf-m/trusted-firmware-m
Updates the https://github.com/zephyrproject-rtos/trusted-firmware-m/
to fix the build error on stm32u5 due to gcc revision

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-02-04 15:00:41 +01:00
Marvin Ouma
6b3750f73c tests: posix: common: separate xsi realtime passing to standalone test
posix.common contains testsuites that can be separated into smaller
groups of tests. This change moves mqueue into a singular
testsuite at tests/posix/message_passing app directory.

Signed-off-by: Marvin Ouma <pancakesdeath@protonmail.com>
2025-02-04 15:00:24 +01:00
Kalle Kietäväinen
52b8e3d370 tests: kernel: metairq: Ensure meta-IRQ can preempt a cooperative thread
The intention of the test is to have a meta-IRQ preempt a cooperative
thread, then ensure the same cooperative thread is resumed back to instead
of a higher priority thread. Thus, the test needs to assert that the lower
priority cooperative thread is not yet complete when it makes the higher
priority thread ready to run.

This change reveals bugs like #80574, where the meta-IRQ is unable to
preempt a cooperative thread.

Signed-off-by: Kalle Kietäväinen <kalle.kietavainen@silabs.com>
2025-02-04 12:03:20 +01:00
Kalle Kietäväinen
d929b8a9fa Revert "arch: arm: cortex_m: Only trigger context switch if thread is preemptible"
This reverts commit 42036cdbca.

Architecture specific code should not do preemption checking before context
switch. This is already handled by the scheduler, so duplicating it would
be redundant and error prone. These checks used to be necessary, but the
scheduler has been rewritten since then and the checks were removed in
3a0cb2d35d (kernel: Remove legacy preemption checking, 2018-05-23).

The check this reverts was also incorrect, as it didn't take scheduler
locking nor meta-IRQs into account.

Fixes #80574

Signed-off-by: Kalle Kietäväinen <kalle.kietavainen@silabs.com>
2025-02-04 12:03:20 +01:00
Emil Gydesen
026a2c54ae tests: Bluetooth: Audio: Spring cleanup for audio test files
Add missing and remove unused includes. Fix spelling mistakes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-04 12:03:04 +01:00
Emil Gydesen
48aedc98da Bluetooth: Audio: Spring cleanup for audio source files
Add missing and remove unused includes. Fix spelling mistakes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-04 12:03:04 +01:00
Emil Gydesen
dbabc18940 samples: Bluetooth: Audio: Spring cleanup for audio header files
Add missing and remove unused includes. Fix spelling mistakes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-04 12:03:04 +01:00
Emil Gydesen
f460510df5 Bluetooth: Audio: Spring cleanup for audio header files
Add missing and remove unused includes. Fix spelling mistakes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-02-04 12:03:04 +01:00
Chris Desjardins
18d30e3535 drivers: i2s: Make the stm32 i2s driver use a msgq
Currently uses a home grown ringbuffer and a semaphore with irq locks.

Signed-off-by: Chris Desjardins <chris@arch-embedded.com>
2025-02-04 12:02:52 +01:00
Jamie McCrae
9ae7c1e000 dts: common: nordic: Fix styling
Fixes styling to adhere to coding standards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-02-04 11:56:46 +01:00
Johan Hedberg
7a426deae3 doc: gsg: Clarify west workspace naming requirements
The way the instructions were formulated, it was possible for someone to
get the impression that only a specific name of the workspace is allowable.
Clarify that the name and location can be freely chosen.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-02-04 11:56:40 +01:00
Jamie McCrae
f62079bd1d doc: release: 4.1: Add MCUmgr callback change
Adds a note of the new data in the callback

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-02-04 11:56:31 +01:00
Jamie McCrae
f3e2e7dc06 mgmt: mcumgr: grp: img_mgmt: Add image number to confirmed callback
Adds the image number to the confirmed callback

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-02-04 11:56:31 +01:00
S Swetha
8f647ef46b [shell]: Add thread control features through shell
This commit extends the shell command functionality by
adding three new operations for thread management.
kernel thread suspend <thread_id>:
Suspends any thread based on its identifier.
kernel thread resume <thread_id>:
Resumes the thread that was previously suspended.
kernel thread kill <thread_id>:
Terminates any thread based on its identifier
These extended commands are useful for controlling
any threads through Zephyr Shell.

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-02-04 11:56:22 +01:00
Karol Lasończyk
f551b2dc00 drivers: hwinfo: Support for reset reasons in nRF54H20
Adding support for reset reasons in the nRF54H20 SoC.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-02-04 11:56:15 +01:00