Commit graph

126,787 commits

Author SHA1 Message Date
Tomáš Juřena
55d4766084 boards: blues: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
2856c76760 boards: arduino: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
3eb9120e14 boards: alientek: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
01f41da1bc boards: adi: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
106fffe716 boards: adafruit: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
4635588474 boards: 96boards: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
f3e5644f66 boards: st: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Yasushi SHOJI
4c506c01ca scripts: west_commands: sdk: clarify toolchain selection help
Users were confused about which toolchain names to pass to
`west sdk install -t`, since the documentation did not list them.
Enhance the help text to suggest installing all toolchains if
unsure and point to the SDK release notes where the available
toolchains are listed.

ref: https://github.com/zephyrproject-rtos/zephyr/discussions/94572

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-08-20 02:18:12 +02:00
Yasushi SHOJI
8f7700be19 doc: getting_started: simplify Python dependency install step
The original wording made the `west packages` step look optional, which
caused confusion for users. Rephrase it as a direct instruction to make it
clear this step is required.

ref: https://github.com/zephyrproject-rtos/zephyr/discussions/94572

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-08-20 02:18:12 +02:00
Abderrahmane JARMOUNI
75034073d0 MAINTAINERS: add myself as Samples collaborator
Add myself (JarmouniA) as collaborator in the Samples area.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-20 02:18:02 +02:00
Dmitrii Sharshakov
3835d9ae0f sensor: adltc2990: correct emulator implementation
Fix an out of bounds access found by ASan.

Also remove mock_i2c_reg_error which seems to never be read.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:53 +02:00
Dmitrii Sharshakov
7ebdf390d7 tests: fuel_gauge: sy24561: improve test
Validate properties we receive, make sure warnings and errors are
printed, verify config register writes, run on native_sim_64 as well.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:37 +02:00
Dmitrii Sharshakov
81455310b3 fuel_gauge: sy24561: improve emulation
Fix issues found by ASan, log register writes for inspection using
console harness.

Fixes: 5f84be617e

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:37 +02:00
Dmitrii Sharshakov
b98e7f501f pm: fix NULL pointer dereference with stats
Fix null pointer dereference in pm_system_suspend

Fixes #89228

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:20 +02:00
Will McGloughlin
a06cacf16c boards: st: nucleo_l552ze_q: Enable USB
The USB device samples do not build for the Nucleo L552ZE-Q because usb is
not enabled in the board DTS files. Fix it by enabling usb in the board DTS
files.

Signed-off-by: Will McGloughlin <willem.mcg@gmail.com>
2025-08-20 02:17:08 +02:00
Jonas Berg
41a0060338 Drivers: GPIO: Allow AW9523 to be used without interrupts
There will be an compilation error if there is no interrupt GPIO defined
in the device tree file, as parts of the config and data structs
have #if that depends on the presence of interrupt GPIO.

Use the same #if constructs also on the functions that use those
structs.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-20 02:16:57 +02:00
Mahesh Mahadevan
95e274b866 drivers: pinctrl_mci_io_mux: Fix sleep output configuration
The sleep output configuration should be skipped for pins
22 to 28.
This was causing incorrect GPIO wakeups when entering
standby mode on RW612.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:36:38 +02:00
Maureen Helm
8a63b53193 boards: adi: max78000fthr: Enable feather i2c instance
Enables the i2c instance connected to the feather header.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-08-19 23:36:29 +02:00
Jilay Pandya
1e34d479eb drivers: step_dir: refactor stepper_handle_timing_signal
1. Reduce the spinlock scope in stepper_handle_timing_signal
2. perform a step each time the timing signal is called
3. Increment/Decrement actual_position and steps using atomics

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-08-19 23:36:20 +02:00
Jilay Pandya
3314473589 drivers: stepper: move_by(dev,0) shall return steps_completed
move_by(dev,0) shall stop the timing source and trigger
STEPPER_EVENT_STEPS_COMPLETED event

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-08-19 23:36:20 +02:00
Declan Snyder
ad39866b12 soc: mcxw: Add LPIT support
Enable LPIT peripheral on MCXW7x socs.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-19 23:36:06 +02:00
Declan Snyder
42ed3294f2 soc: rw: Clock ctimer if using it for PWM
Clock ctimer if being used for PWM. Otherwise, it not only doesn't work
but makes the chip unable to be communicated to by the debugger.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-19 23:35:59 +02:00
Declan Snyder
88918da169 boards: frdm_mcxn947: Add missing flexcomm clocks
Add the missing flexcomm clocking code for this board.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-19 23:35:50 +02:00
Mahesh Mahadevan
4a67a61227 soc: rw612: Handle counter overflow in Power Mode 3
The RTC counter that is used in Power Mode 3 to track
System time could overflow for large timeouts.
Add code to catch wakeup events due to this overflow and re-enter
Power Mode 3.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:35:32 +02:00
Mahesh Mahadevan
4da30d01b8 drivers: mcux_os_timer: Handle counter overflow in Power Mode 3
The counter that is used in Power Mode 3 to track System time could
overflow for large timeouts.
Add an API that the power system could use to ignore wakeup events
from the timer.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:35:32 +02:00
Mahesh Mahadevan
ac7451e6af drivers: timer: Move MAX_WAIT to header file
Move MAX_WAIT define to the system timer header file
so system timer drivers can use this define.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:35:32 +02:00
Neil Chen
501c6abaac boards: frdm_mcxn236: Support sai for NXP frdm_mcxn236
1. Support sai for NXP frdm_mcxn236.
2. Verified tests/drivers/i2s/i2s_speed

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-19 23:35:24 +02:00
Neil Chen
c9ce1a7d9c boards: frdm_mcxn236: add ewm support
1. Add EWM Support for frdm_mcxn236
2. verified tests/drivers/watchdog/wdt_basic_reset_none

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-19 23:35:24 +02:00
Neil Chen
31656330e0 soc: mcxn23x: Add HWINFO support
1.Add HWINFO support by reading the UUID from Flash Bank0_IFR1.
2.Verified tests/drivers/hwinfo/api

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-19 23:35:24 +02:00
Benjamin Cabé
1b97f4b2b0 include: usbc: doc: Group all USB-C API in same doxygen Group
Put every header defined in include/zephyr/drivers/usb_c/ into the same
doxygroup (`usb_type_c`) so as to not clutter the top-level
`io_interfaces` group with multiple USB-C related groups.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 20:47:57 +02:00
Henrik Brix Andersen
e1f7569c59 boards: st: nucleo_h723zg: list usbd as a supported feature
Add "usbd" in the list of supported features for the ST NUCLEO-H723ZG
development board.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-19 20:47:50 +02:00
Henrik Brix Andersen
4db2a3d288 boards: others: candlelightfd: add list of supported features
Add list of supported features for the candleLightFD board variants.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-19 20:47:40 +02:00
Keith Packard
c1c351d175 modules/cmsis_6: Move to version with picolibc patch
This version along the zephyr branch allows cmsis_6 to compile against
picolibc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-19 20:47:35 +02:00
Michael Estes
f8330b5589 dts: xilinx: add cadence spi controllers to zynqmp.dtsi
Adds spi controller nodes for Cadence SPI controllers in zynqmp.dtsi.

Signed-off-by: Michael Estes <michael.estes@byteserv.io>
2025-08-19 20:47:27 +02:00
Jonas Berg
016f455163 Boards: Shields: Add Adafruit LIS3DH accelerometer shield
Add the Adafruit LIS3DH I2C accelerometer shield.
The picture is from the Adafruit product page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-19 19:23:44 +02:00
Benjamin Cabé
8de9e05dfb include: drivers: input: add @file tag to analog_axis headers
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
b1358efd84 include: drivers: input: enhance Doxygen documentation for pmw3610
Complete the Doxygen documentation for this input driver, put in
input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
487ea79700 include: drivers: input: add missing @file command to input_kbd_matrix.h
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
b3c85b37df include: drivers: input: add missing @file command to input_touch header
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
94231fd096 include: drivers: input: add missing @file command to input_hid header
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
93dda038a2 include: drivers: input: add Doxygen documentation for keymap utilities
Add docs and group under input_interface Doxygen group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
f355788ca5 include: drivers: input: enhance Doxygen documentation for ra_ctsu
Complete the Doxygen documentation for this input driver, put in
input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
81cdd69fc8 include: drivers: input: enhance Doxygen documentation for paw32xx driver
Complete the Doxygen documentation for this input driver,
put in input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
05478edacb include: drivers: input: enhance Doxygen documentation for pat912xx driver
Complete the Doxygen documentation for this input driver,
put in input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
56a527321e include: drivers: input: enhance Doxygen documentation for CY8CMBR3xxx
Complete the Doxygen documentation for this input driver,
put in input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
0c006d7523 include: drivers: input: add Doxygen group for hw-specific API extensions
new input_interface_ext group can be used for grouping device-specific
input API extensions together.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
9105152e57 include: drivers: input: fix doxygen for input_touchscreen_common_config
properly document the struct fields

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
0ff45a6d9f include: drivers: input: add @file command to input.h
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Pieter De Gendt
300016c801 drivers: ethernet: stm32: Set LAA bit on MAC address based on device ID
The MAC addressed derived from the device ID is not assigned by the
manufacturer and therefor the Locally Administered Address (LAA) bit should
be set.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-19 19:14:45 +02:00
Dmitrii Sharshakov
b2db425b62 soc: raspberrypi: rp2350: indicate DSP extension support
Confirmed by section 3.7.2 in the datasheet (version 29 July 2025) and
running a sample piece of code exercising smuad, smladx and
other DSP intrinsics.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-19 19:14:29 +02:00