Commit graph

107945 commits

Author SHA1 Message Date
Haiyue Wang
f9bff7f32f modules: lvgl: Rename the VDB custom section Kconfig name
There are 4 Kconfig names about the "Draw Buffer". Rename 'VBD' to 'VDB'
in Kconfig option 'LV_Z_*VBD*_CUSTOM_SECTION' to make name consistent.

config LV_Z_VDB_ALIGN
	int "Rending buffer alignment"

config LV_Z_VBD_CUSTOM_SECTION
	bool "Link rendering buffers to custom section"

config LV_Z_DOUBLE_VDB
	bool "Use two rendering buffers"

config LV_Z_VDB_SIZE
	int "Rendering buffer size"
	default 100 if LV_Z_FULL_REFRESH

And the draw buffer definition is now:

	static uint8_t buf0[BUFFER_SIZE]
	#ifdef CONFIG_LV_Z_VDB_CUSTOM_SECTION
		Z_GENERIC_SECTION(.lvgl_buf)
	#endif
			__aligned(CONFIG_LV_Z_VDB_ALIGN);

Signed-off-by: Haiyue Wang <haiyuewa@163.com>
2025-01-06 17:13:29 +00:00
Arif Balik
afa54a23f3 boards: st: fix partition size for nucleo_l452re
Fixed wrong partitions size for nucleo_l452re
which should be 16KB

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-01-06 17:13:17 +00:00
Dmitrii Golovanov
d2c19a0535 arch: nios2: timing: Fix timing cycles rollover
Fix arch_timing_cycles_get() to prevent overflow on the clock rollover.

The issue is observable on tests/benchmarks/wait_queues and
tests/benchmarks/sched_queues with BENCHMARK_NUM_ITERATIONS is large
enough, e.g. default 1000.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-01-06 17:13:10 +00:00
Grzegorz Runc
9fcb17400b soc: stm32: add support for stm32h757
Add support for STM32H757 SoC, which shares its design
with STM32H747 with added cryptography peripherals.

Signed-off-by: Grzegorz Runc <g.runc@grinn-global.com>
2025-01-06 17:12:55 +00:00
Luc BEAUFILS
6f240ef18c doc: stm32l562e_dk: add a screen and touch panel section
The screen and touch panel are working with zephyr. Add it in the board
documentation.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-01-06 16:10:42 +01:00
Luc BEAUFILS
fe41896475 boards: stm32l562e_dk: add support for touchscreen
The stm32l562e_dk board uses a ft6x06 i2c controller for the touchscreen.
The zephyr driver ft5336 can control it.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-01-06 16:10:42 +01:00
Francois Ramu
04880448c7 tests: drivers: watchdog api testing on the stm32h7rs boards
Add the overlay file to run tests/drivers/watchdog/wdt_basic_api
on the nucleo_h7s3l8 and stm32h7s78_dk target boards

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-01-06 16:10:27 +01:00
Francois Ramu
556bf375a9 tests: drivers: adc api testing on the stm32h7s3l8 nucleo
Add the overlay file to run the tests/drivers/adc/adc_api
on the nucleo_h7s3l8

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-01-06 16:10:27 +01:00
Francois Ramu
00e9195f45 boards: st: nucleo_h7s3l78 nucleo144 board
Add the nucleo_h7s3l8 board from STMicroelectronics
This Nucleo 144 board has stm32h7s3L8 mcu.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-01-06 16:10:27 +01:00
Fabian Blatz
72694a9d09 drivers: stepper: Cleanup doxygen comments
Cleans up the doxygen comments in the stepper api header. Includes:
- documentation for MICRO_STEP_RES_INDEX
- constistent use of microsteps instead of micro_steps or micro steps
- fix for previously renamed set_target_position refrence

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-06 14:42:15 +01:00
Raffael Rostagno
16d7bbf63f tests: pwm_gpio_loopback: esp32: Add test overlays
Add test overlays for ESP32 devices.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-01-06 14:41:56 +01:00
Raffael Rostagno
ef96ed96cb tests: pwm: Add test suite with GPIO loopback
Add PWM test suite which uses GPIO as loopback input to check
the programmed timings.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-01-06 14:41:56 +01:00
Camille BAUD
0c3913962e boards: others: Introduce Pro Micro nRF52840 type
This introduces the pro micro nrf52840 board type,
commonly available as the cheapest nrf52840 development board,
and is based on the Nice!Nano

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-01-06 14:41:37 +01:00
Chaitanya Tata
7bb5210e00 manifest: hostap: Pull fix for twister failure
Twister failure when TLS + Wi-Fi + WPA3=n.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-01-06 11:33:55 +01:00
Jordan Yates
feaf21f80c drivers: watchdog: kconfig option for callback support
Add a non-configurable option which drivers can select to indicate that
they do not support callbacks on watchdog expiry.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-01-06 08:48:41 +01:00
Yong Cong Sin
1a578eb72c lib: os: mpsc_pbuf: do not wait when spinlock is held
Check if the spinlock is held before attempting to wait by
taking the semaphore, as that would cause a context switch which
isn't allowed and will trigger an assertion error when
`CONFIG_SPIN_VALIDATE` is enabled.

Logging in spinlock-held context when the log buffer is full can lead
to an infinite assertion error loop, as the logging subsys attempts to
allocate buffer when there's none available, it will try to wait for
one and thus triggers the assertion error, the error message will be
printed through the logging sybsys but there's no buffer available,
so it will try to wait for one and triggers another assertion error..
This loop just goes on and on forever, and nothing gets printed to
the terminal.

Added a test to validate the fix.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
Signed-off-by: Maxim Adelman <imax@meta.com>
2025-01-06 06:53:52 +01:00
Henrik Brix Andersen
b114e0f6db doc: requirements: avoid using pygments v2.19.0
Avoid using pygments v2.19.0 as it contains a regressions in parsing "cfg"
code-blocks.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-01-05 22:09:44 +01:00
Henrik Brix Andersen
411f9d8fcb boards: tdk: robokit1: align driver init levels with devicetree deps
This board contains both an NTC sensor dependings on a specific SPI ADC and
a TMP116 containing both a sensor and an EEPROM.

Align these driver initialization priorities with the devicetree
dependencies to avoid build failures with CONFIG_CHECK_INIT_PRIORITIES=y.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-01-05 09:59:07 +01:00
Chris Friedt
68c0ff4e85 posix: fcntl.h: define constants in terms of zvfs constants
Define fcntl.h constants in terms of zvfs constants.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-05 09:58:54 +01:00
Chris Friedt
e08cc508e1 os: fdtable: set offset to zero with newly reserved fd's
Previously, if a file object is was re-used, it could
inherit the offset field of the previously closed file object,
making reading from the beginning of the file impossible
until the offset was manually zero'ed.

The offset should *always* be zero when a file is ready to be
used.

The issue really only presents itself when implementing a
vtable backend.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-05 09:58:19 +01:00
Chris Friedt
2a2806bb40 os: fdtable: restore errno if optional locking ioctl fails
The `zvfs_finalize_typed_fd()` function notifies some backends
via `ioctl()` with `ZFD_IOCTL_SET_LOCK`. However, support for
this method and functionality is optional.

In backends that do not support locking, this benign failure can
set `errno` to 95 (`EOPNOTSUPP`) in many circumstances where a
change in `errno` (indicating some kind of failure) is not
appropriate.

Prevent errno poisoning by backing-up and restoring `errno`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-05 09:57:49 +01:00
Chris Friedt
ba8025fcd4 newlib: correct signature of _open() for xtensa
Previously, in libc-hooks.c, the signature of `_open()` was as
shown below.

```cpp
int _open(const char *name, int mode);
```

This conflicted with the signature of `_open()` from newlib,
which is

```cpp
int _open(const char *name, int flags, ...);
```

Moreover, the mode and flags field were reversed, but only for
the Xtensa architecture due to the `_open_r()` hook that is
present in `libc-hooks.c`.

This manifested itself via a call to `fopen(file, "w+")`, where
the expected flags should include `O_CREAT | O_TRUNC`, or
`0x200 | 0x400`. Instead, the unexpected flags passed to the
underlying `zvfs_open()` call were `0x1b6`.

This change corrects the function signature and order of the
arguments.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-05 09:56:54 +01:00
Emil Gydesen
4d60f0a51b samples: Bluetooth: Handle shutdown of iso broadcast benchmark
The sample did not properly handle ending the broadcast and setting
it up for a new broadcast, due to missing wait for sem_big_term and
a bad check in iso_disconnected.

Furthermore if any did not work when setting up the BIG,
the error handling did not properly clean up for a retry.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-01-04 15:59:06 +01:00
Fabian Blatz
f25a8aaf1a samples: modules: lvgl: transparency: Migrate to v9.2
Removes the LV_COLOR_SCREEN_TRANSP Kconfig option as its not part of the
modules Kconfig anymore and renames the functions according to the new v9.2
API.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
472caa96cb samples: drivers: video: capture_to_lvgl: Migrate to LVGL v9.2
Adjust the Kconfig symbols of the capture to lvgl sample. LV_MEM_CUSTOM has
been removed in v9.0 and LV_USE_IMG has been changed to LV_USE_IMAGE.
Fix the changed fields for the image descriptor struct.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
d2cebade85 modules: lvgl: Add support for NXP PXP engine
Adds support for the NXP PXP engine. LVGL changed
the Kconfig symbol from LV_USE_GPU_NXP_PXP to
LV_USE_PXP, but hal_nxp still relies on
LV_USE_GPU_NXP_PXP, so add a temporary symbol for it.
Additionally the drawing engines need to invalidate
ranges in the dcache, the method needs to be provided
via a lvgl_support.h file.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
3e6eab3cdb samples: modules: lvgl: demos: Add new demos
Add the new demos of LVGL 9.2:
- flex_layout
- keypad_and_encoder
- render
- scroll
- multilang

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
e9dc495e55 tests: lib: gui: lvgl: Add testcase for OSAL implementation
This patch adds a testcase adding the OSAL to ensure the implementation is
built during CI.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
9a4ae67f7b modules: lvgl: Add zephyr OSAL implementation
This patch adds the OSAL implementation of dynamic thread creation, mutex
and thread syncronization primitive (semaphore) enabling the use of the
parallel rendering architecture provided with LVGL 9.0. To use it, set
`CONFIG_LV_Z_USE_OSAL` and your preferred dynamic thread stack allocation
method (pool or heap).

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
23431193ef modules: lvgl: Update gluecode to v9.2
This patch updates the module gluecode to be compatible with LVGL version
9.2. This includes changes done to display and input driver initialization
  and draw buffer handling.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
5e11a39b4f samples: subsys: display: lvgl: Migrate to v9.2
This patch changes the functions unsed in the subsys demo that are part of
the api map to anticipate their deprecation.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
9bee6016c9 samples: modules: lvgl: demos: Migrate to v9.2
This patch changes the usage of LVGL functions which are typedefed in the
api map to their new version to anticipate their deprecation.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
693bc51f44 samples: modules: lvgl: accelerometer_chart: Migrate to v9.2
This patch fixes the style size setter usage in the accelerometer_chart
demo since it now expects two dimensions. Also the newly named functions
which are typedefed by the api_map in LVGL are updated to anticipate their
deprecation.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
1279374e91 boards: stm32h7b3i_dk: Rename LVGL DMA2D Kconfig symbols
Rename the defaulted DMA2D Kconfig symbols to match the new upstream
nomenclature.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
8ff8e2940a tests: lib: gui: lvgl: Migrate to version 9.2
With the update to v9.2.0 several Kconfig symbols were renamed or removed.
Adjust the test accordingly. Also several constants were renamed, rename
those also.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
02cb5fe0c5 samples: modules: lvgl: Update Kconfig depedencies
With v9.1.0 the benchmark sample now has a Kconfig depedency on
LV_USE_DEMO_WIDGETS.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
feb4683293 samples: modules: lvgl: Update CMakeLists
Update the CMakeLists for LVGL to reflect the changes done in v9.2.0.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
1ea35e237c west.yml: Update lvgl module to v9.2.0
Update the west yaml to point to the new LVGL version.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
James Roy
802eac71f0 style: edtlib: Use a better line continuation operator
Replace backslashes('\') with PEP-8 recommended
parentheses('( )') as the line continuation operator.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-01-04 14:15:37 +01:00
Jamie McCrae
67597cf85a zephyr: storage: flash_map: Fix parameter order
Two functions have parameters in the wrong order in the function
description, fix them to the correct order

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-01-04 14:15:19 +01:00
Chris Friedt
7ebb5938de samples: net: syslog_net: add missing dep of net log backend
The network log backend had the POSIX_C_LANG_SUPPORT_R
dependency added in a previous commit, but the dependency was
never added to the sample.

Add the dpeendency of LOG_BACKEND_NET to the
samples/net/syslog_net/prj.conf

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-04 10:56:12 +01:00
Chris Friedt
60928a55fc posix: options: remove default setting of toolchain option
Do not set TC_PROVIDES_POSIX_C_LANG_SUPPORT_R as the default in
lib/posix/options/Kconfig.c_lang_r . TC_PROVIDES options are
only intended to be set by C libraries that implement parts of
the POSIX standard.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-04 00:49:03 +01:00
Martin Jäger
17cde7d574 samples: net: openthread: create category in docs
Add higher-level category for OpenThread in docs to avoid orphaned
sample documentation.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-01-03 19:39:13 +01:00
Martin Jäger
8eff86229e samples: net: openthread: shell: add sample application
Add simple application to test Thread and IEEE 802.15.4 using the
OpenThread shell.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-01-03 19:39:13 +01:00
Hessel van der Molen
8316f097ce arch: arm: cortex_m: pm_s2ram: fix system_off rv as rv of s2ram_suspend
The return value of the system_off call is overwritten by the the call to
pm_s2ram_mark_check_and_clear. As arch_pm_s2ram_suspend needs to specify
why system_off failed, we need to make sure the rv of system_off is moved
to a safe register before calling pm_s2ram_mark_check_and_clear and moved
to r0 als rv of arch_pm_s2ram_suspend when the suspend call exits.

Signed-off-by: Hessel van der Molen <hvandermolen@dexels.com>
2025-01-03 17:11:09 +00:00
Gerhard Jörges
e4b2fe4b78 scripts: west_commands: fix type of path options
Using `west patch` with the `--patch-base`, `--patch-yaml` or
`--west-workspace` option results in an unhandled AttributeError in
filter_args() because the function expects these args to be of type
path. Adding the type to the argument definition forces argparse to
create variables of type path.

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-01-03 17:10:58 +00:00
Matt Rodgers
b7b3449f48 net: websocket: don't mask data sent from server via zvfs write
RFC6455 section 5.1 specifies that "A server MUST NOT mask any frames
that it sends to the client". Implement this for websocket write calls
via ZVFS, by storing in the websocket_context whether a socket is acting
in the client or server role, and using this to determine if sent data
should be masked.

Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
2025-01-03 13:26:43 +01:00
Andrzej Kuros
ad1657f04b modules: hal_nordic: remove setting of NRF_802154_USE_RAW_API
The non-raw API has been removed from the nRF 802.15.4 Radio Driver.
There is no need to set NRF_802154_USE_RAW_API macro anymore in
CMakeLists.txt that integrates the driver.

Signed-off-by: Andrzej Kuroś <andrzej.kuros@nordicsemi.no>
2025-01-03 11:39:30 +01:00
Andrzej Kuros
9a0ff5705b manifest: update hal_nordic revision
This commit updates revision of hal_nordic to bring the latest changes
in the nRF IEEE 802.15.4 driver.

Signed-off-by: Andrzej Kuroś <andrzej.kuros@nordicsemi.no>
2025-01-03 11:39:30 +01:00
Chaitanya Tata
a5020290de snippets: wifi-ipv4: Increase max polling sockets
When using this snippet with Zperf a boot warning is seen, fix the
warning by increasing the sockets.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-01-03 11:39:13 +01:00