Commit graph

90597 commits

Author SHA1 Message Date
Magdalena Kasenberg 0d27dd5dd3 bluetooth: tester: Add support for CAP
Add support for CAP test cases.
Split btp_bap.c for better maintenance into unicast and broadcast.

Signed-off-by: Magdalena Kasenberg <magdalena.kasenberg@codecoup.pl>
2024-01-25 19:32:34 -05:00
Declan Snyder dcedb649ca drivers: nxp_enet: Fix build error with PTP on
Fix build errors in nxp enet driver during case where PTP on,
and add coverage to CI.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-01-25 19:32:02 -05:00
David Leach 3ff78288a6 manifest: update hal_nxp
HAL update removes unneeded files to reduce the size of the NXP HAL.

Signed-off-by: David Leach <david.leach@nxp.com>
2024-01-25 19:31:39 -05:00
Pisit Sawangvonganan f51c8ee739 doc: releases: fix typo
Utilize a code spell-checking tool to scan for and correct spelling errors
in all files within the doc/releases directory.

The typo in the 'Issue Related Items' section will be left unchanged.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-01-25 18:14:31 -05:00
Pisit Sawangvonganan 4889c9ca17 sd: update comment to reference 'SD host controller specification'
In the code comments referring to section 3.6.1, changed the reference
from 'SD specification' to 'SD host controller specification'
for a clearer and more accurate context.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-01-25 20:13:25 +01:00
Pisit Sawangvonganan 1829fc33cb sd: omit zero-initialization for csd[4] and cid[4]
After a review of the usage of csd[4] and cid[4],
it has been determined that zero-initialization can be omitted.

It can be expected from successful operations that data will be
appropriately written back from the underlying layer.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-01-25 20:13:25 +01:00
Pisit Sawangvonganan 8534c38232 sd: omit zero-initialization for sdhc_command and sdhc_data structures
The decision to omit zero-initialization is driven by a desire to enhance
Zephyr's compactness and efficiency.

This is achieved by omitting zero-initialization, thereby reducing the
instruction count and, as a byproduct, the code size.

After a thorough review of the usage of struct sdhc_command and sdhc_data,
it has been determined that zero-initialization can be omitted.
Only a portion of the fields need to be manually initialized.
(e.g. cmd.retries, data.block_addr)

For the uninitialized fields, it can be expected from successful
operations that data will be appropriately written back from
the underlying layer.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-01-25 20:13:25 +01:00
Pisit Sawangvonganan 612aa7169a sd: add config SD_CMD_RETRIES
Introduced the config SD_CMD_RETRIES option as a build-time parameter.
This allows the assignment of a specific value to cmd.retries.
The default value has been set to 0 to preserve the previous setting.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-01-25 20:13:25 +01:00
Daniel Leung cc25637126 soc: intel_adsp/ace: fix assert for uncached pointer
Only when CONFIG_MP_MAX_NUM_CPUS > 1, then .bss is put in
uncached region. Otherwise, .bss is in cached region.
So the assertion that g_key_read_holder must be in uncached
region must take into account how many CPUs are enabled on
build.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-01-25 20:12:28 +01:00
Adam Wojasinski 2e7a1f9702 doc: posix: Update POSIX supported API documentation
Updates in documentation support for `mq_notify` API
in `_POSIX_MESSAGE_PASSING` group option.

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2024-01-25 19:47:37 +01:00
Adam Wojasinski dfb6e5aa96 tests: posix: Add test cases for mq_notify()
Adds test cases testing following features:
- function error handling
- basic notification type
- thread notification type
- adding notification to non-empty queue

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2024-01-25 19:47:37 +01:00
Adam Wojasinski c1643f9701 posix: Add implementation of mq_notify() function
The function was the last missing piece of the `_POSIX_MESSAGE_PASSING`
option group. Due to lack of signal subsystem in the Zephyr RTOS
the `sigev_notify` member of the `sigevent` structure that describes
the notification cannot be set to `SIGEV_SIGNAL` - this notification
type is not implemented, the function will return -1 and set `errno`
to `ENOSYS`.

`mq_notify` documentation:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/mq_notify.html

Fixes #66958

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2024-01-25 19:47:37 +01:00
Armando Visconti 9f1c256e46 samples/shields: add samples to test x-nucleo-iks4a1 shield
Provide three basic examples to test the x-nucleo-iks4a1 shield:

    - Test shield in standard mode
        Acquire sensor data from shield with all MEMS sensors connected
        to micro-controller

    - Test shield in HUB1 mode
        Acquire sensor data from shield with lis2mdl and lps22df
        connected to LSM6DSV16X sensor hub

    - Test shield in HUB2 mode
        Acquire sensor data from shield with lis2mdl and lps22df
        connected to LSm6DSO16IS sensor hub

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2024-01-25 18:26:40 +00:00
Armando Visconti cc3040aed6 boards/shields: add support for x-nucleo-iks4a1 shield
x-nucleo-iks4a1 shield is an arduino compatible companion board
which can be used on top of Nucleo standard boards for industrial
applications. Following MEMS sensor are currently supported:

    - LSM6DSO16IS: MEMS 3D accelerometer + 3D gyroscope
    - LSM6DSV16X: MEMS 3D accelerometer + 3D gyroscope
    - LIS2MDL: MEMS 3D magnetometer
    - LPS22DF: Low-power and high-precision MEMS pressure sensor

(https://www.st.com/resource/en/data_brief/x-nucleo-iks4a1.pdf)

The board exports three overlays:

    1. x_nucleo_iks4a1.overlay (standard mode)

       All MEMS sensors are connected to micro-controller.

    2. x_nucleo_iks4a1_shub1.overlay (HUB1 mode)

       LSM6DSV16X IMU sensor act as a sensor_hub with LIS2MDL and
       LPS22DF connected to it.

    3. x_nucleo_iks4a1_shub2.overlay (HUB2 mode)

       LSM6DSO16IS IMU sensor act as a sensor_hub with LIS2MDL and
       LPS22DF connected to it.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2024-01-25 18:26:40 +00:00
Manuel Argüelles ed0ccbbc0b boards: arm: ucans32k1sic: enable watchdog support
Document support and enable testing for the watchdog
driver on this board.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-01-25 18:26:25 +00:00
Manuel Argüelles f38b01c7ac soc: arm: nxp_s32: s32k1: enable watchdog driver
Enable on-chip watchdog driver support for S32K1 devices.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-01-25 18:26:25 +00:00
Kai Vehmanen f6995feae9 soc: xtensa: intel_adsp: cavs: fix XCC build
Commit 3b99fb1b4a ("xtensa: do not imply atomic ops kconfig") removed
ATOMIC_OPERATIONS_ARCH at xtensa arch level. This triggers a bug in
intel_adsp cavs builds with XCC compiler as
CONFIG_ATOMIC_OPERATIONS_BUILTIN is not defined but neither is
CONFIG_ATOMIC_OPERATIONS_ARCH anymore, resulting in failed builds.

Fix the XCC build by defining CONFIG_ATOMIC_OPERATIONS_ARCH at
soc level.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2024-01-25 17:54:26 +01:00
Benjamin Lemouzy 5ff55630a3 drivers: audio: tas6422dac: fix codec_mute_output function
Mute GPIO mutes both channel 1 and channel 2.
So, only control it when all channels have to be muted.

Signed-off-by: Benjamin Lemouzy <blemouzy@centralp.fr>
2024-01-25 17:54:14 +01:00
Benedikt Schmidt 23ed31383e drivers: gpio: use gpio_is_ready_dt in TLE9104
Use gpio_is_ready_dt in the driver for the TLE9104 before
actually using the GPIO.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-01-25 17:52:06 +01:00
Benedikt Schmidt f26da17723 drivers: gpio: make reset of TLE9104 optional
In some hardware designs it might happen that the reset signal
for the TLE9104 is not used only for this purpose, but instead for
instance to reset other devices at the same time. For such a hardware
design it is then necessary to make the reset GPIO optional. The reset
will have to be triggered earlier on.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-01-25 17:52:06 +01:00
Chaitanya Tata c07d648304 wifi: shell: Remove duplicate argument count checks
Now that we are using the shell macro to enforce argument count check,
both mandatory and optional arguments, these additions checks are
unnecessary.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-01-25 11:50:59 -05:00
Chaitanya Tata c53a1df138 wifi: shell: ap: Add a command to disconnect a station
The shell commands can be used to disconnect a connected station in AP
mode.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-01-25 11:50:59 -05:00
Chaitanya Tata de667a7fae wifi: ap: Add support to disconnect a STA
In AP mode, this can be used to disconnect a connected station.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-01-25 11:50:59 -05:00
Benedikt Schmidt 5a618057de drivers: gpio: add missing check if GPIO is ready for BD8LB600FS
Add a missing call to gpio_is_ready_dt in the driver of
the BD8LB600FS.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-01-25 11:50:35 -05:00
Benedikt Schmidt 7b55b99cac drivers: gpio: implement daisy chaining for BD8LB600FS
This implements the daisy chain feature of the low side switch
BD8LB600FS. The daisy chaining is in hardware achieved via
connecting the MISO and MOSI lines of multiple instances of the IC
in a row. It is implemented in the driver through a variable number
of GPIOs on one instance. Therefore, one device tree instance of the
IC will handle multiple daisy chained physical instances.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2024-01-25 11:50:35 -05:00
Anas Nashif 2dc1cc712a manifest: optional: update SOF to latest from upstream
Update to latest commit with patches to align with zephyr tree.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-01-25 11:50:07 -05:00
Fabio Baltieri a06b7a4676 input: keymap: use the non _OR_NULL DEVICE_DT_GET variant
This driver really needs a device associated with it for the
syncronization bit to make sense, and since the argument is DT_PARENT it
will get it all the time, so no changes in practice, but this should
have been using the normal macro anyway.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-01-25 16:02:16 +00:00
Adrien MARTIN 2d8f4d1899 boards: arm: nucleo_g0b1re: add fdcan2 support
The nucleo_g0b1re board is based on stm32g0 that supports 2 can
controllers. This commit adds support for the second can controller.
Add also can label in yml board file.

Signed-off-by: Adrien MARTIN <adrienmar@kickmaker.net>
2024-01-25 16:01:40 +00:00
Adrien MARTIN c1ae6e5b4e soc: stm32g0: add fdcan2
The STM32G0 soc has 2 CAN controllers. The 2nd on was not working
with zephyr yet as both controllers shares the same IRQ. Recently, the
shared irq system was integrated on now, both can controllers can work
on this chip. Shared interrupts must be enabled only if both can
controllers are enabled.

Signed-off-by: Adrien MARTIN <adrienmar@kickmaker.net>
2024-01-25 16:01:40 +00:00
Daniel DeGrasse c8dfdda027 drivers: i2s: i2s_mcux_flexcomm: support additional channels and formats
Add support for more than 2 I2S channels to the I2S Flexcomm driver.
Additionally, remove comment stating I2S PCM and Left justified formats
are not supported, as these formats are now validated to function
correctly.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-01-25 16:01:14 +00:00
Jean Nanchen 80f7d518c6 modbus: Remove mode reset in modbus_disable function
Remove reset mode in modbus_disable.

Signed-off-by: Jean Nanchen <jean.nanchen@gmail.com>
2024-01-25 16:00:38 +00:00
Øyvind Rønningstad 0176a27474 doc: Add release notes and migration guide for zcbor 0.8.0
A short release note referring to the official release notes,
and a migration guide with the most likely changes that need to be made.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Øyvind Rønningstad 223b4c372f tests: mgmt: Adapt to API changes in zcbor 0.8.0
zcbor_new_state and zcbor_tstr_put_term

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Øyvind Rønningstad 527af809f8 mgmt: Adapt to API changes in zcbor 0.8.0
zcbor_new_state and zcbor_tstr_put_term

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Øyvind Rønningstad 1bbb0a9ddb lwm2m: Adapt to zcbor 0.8.0
Regenerate from CDDL, update patch, fix references in code.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Øyvind Rønningstad ea4c12df82 modules: zcbor: Add config CONFIG_ZCBOR_MAX_STR_LEN
For use with zcbor_tstr_put_term() which needs a maximum string
length.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Øyvind Rønningstad 5d95776514 scripts: requirements-extra.txt: Update zcbor from 0.6.0 to 0.8.0
If people are using the zcbor script for code generation, it needs to be
at the latest version

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Øyvind Rønningstad 0786e523da west.yml: Update zcbor to 0.8.0 as well as uoscore-uedhoc and MCUboot
Highlights of zcbor 0.8.0:
- Add support for unordered maps
- Performance improvements
- Naming improvements for generated code
- Bugfixes

Update MCUboot and uoscore-uedhoc to bring in changes related to
zcbor 0.8.0.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2024-01-25 15:09:16 +00:00
Hang Fan b3d2891e16 Bluetooth: Classic: Add support for class of device
Add `CONFIG_BT_COD` for class of device.

< HCI Command: Write Class of Device (0x03|0x0024) plen 3
        Class: 0x200408
          Major class: Audio/Video (headset, speaker, stereo, video, vcr)
          Minor class: Hands-free Device
          Audio (Speaker, Microphone, Headset)
> HCI Event: Command Complete (0x0e) plen 4
      Write Class of Device (0x03|0x0024) ncmd 1
        Status: Success (0x00)

Signed-off-by: Hang Fan <fanhang8@gmail.com>
2024-01-25 15:09:01 +00:00
Patryk Duda 73396f9f86 flash: Add program/erase parallelism support for STM32F4x
The implementation uses the same approach as STM32F1x.

Program/erase speed can be set by setting 'write-block-size' flash
property to 1, 2, 4 or 8.

Signed-off-by: Patryk Duda <patrykd@google.com>
2024-01-25 14:45:32 +01:00
Nicolas Pitre 7c21df641d multi_heap: keep number of heaps as an unsigned value
Although very unlikely for this value to ever be negative in practice,
this would make Coverity happy.

Fixes #67969

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-01-25 11:36:23 +00:00
Alberto Escolar Piedras 571b647825 subsys/net/lib/lwm2m: Change how we seed the random generator
Instead of seeding the random generator from the test
itself calling into a host API, let's use the
entropy generator option to be seeded from /dev/urandom

This avoids trouble with the srandom() and time() calls
not existing depending on the chosen C library.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-01-25 12:28:51 +01:00
Alberto Escolar Piedras c6ed39e3ad drivers entropy fake_native: Add option to seed generator randomly
Add a command line option which will seed the random generator
from /dev/urandom.
This can be usefull for some particular tests in which we are
interested in having different random numbers in each run,
but we cannot provide a different random seed from command line.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-01-25 12:28:51 +01:00
Flavio Ceolin 3fc5d971fe security: Add compiler static analysis support
Enable GCC builtin static analysis in Zephyr's static code analysis
(SCA) infra.

When this option is enabled GCC performs a static analysis and
can point problems like:

sample.c

+	int *j;
+
+	if (j != NULL) {
+		printf("j != NULL\n");

output:

${ZEPHYR_BASE}/samples/userspace/hello_world_user/src/main.c:30:12:
warning: use of uninitialized value 'j' [CWE-457]
[-Wanalyzer-use-of-uninitialized-value]

   30 |         if (j != NULL) {
      |            ^
  'main': events 1-2
    |
    |   25 |         int *j;
    |      |              ^
    |      |              |
    |      |              (1) region created on stack here
    |......
    |   30 |         if (j != NULL) {
    |      |            ~
    |      |            |
    |      |            (2) use of uninitialized value 'j' here

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2024-01-25 12:07:27 +01:00
Keith Packard b27494b7ed lib/libc: Update picolibc to 1.8.6
* Reduces memory usage for ctype while fixing an 'isblank'
   related compatibility issue.

 * Resolves compatibility issues with GCC 13

 * Removes explicit _POSIX_C_SOURCE definition when building
   as a module.

 * Fix some _FORTIFY_SOURCE issues.

Signed-off-by: Keith Packard <keithp@keithp.com>
2024-01-25 12:07:19 +01:00
Keith Packard 4f40dd1f95 tests/strerror: Remove test for non-standard strerror_r function
Zephyr does not include this function under Rule A.4: C Standard Library
Usage Restrictions in Zephyr Kernel, hence a conforming C library need not
provide it.

Signed-off-by: Keith Packard <keithp@keithp.com>
2024-01-25 12:07:19 +01:00
Christopher Friedt 57057b141c posix: add a top-level menu
Add a top-level menu to prevent POSIX API options from
cluttering the menuconfig view under
"Additional libraries".

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-01-25 05:54:06 -05:00
Bjarki Arge Andreasen d801e697dd modem: chat: Implement TRANSMIT_IDLE event
Refactors modem chat module to use TRANSMIT_IDLE event instead
of polling when transmitting, cleaning up the transmit handler
by combining duplicate code and using an internal state instead
of multiple iterators to track send state.

Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
2024-01-25 11:22:42 +01:00
Bjarki Arge Andreasen 27b0d4e3fe modem: chat: remove receive and transmit timeouts
Remove receive and transmit timeouts which are no
longer useful as the RECEIVE_READY and
TRANSMIT_IDLE events will be used to efficiently
manage timeouts between transmit/receive calls.

Then update the the in-tree drivers using the
modem_chat module to omit the process timeout
parameter.

Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
2024-01-25 11:22:42 +01:00
Magdalena Kasenberg 62809d7581 bluetooth: tester: Enable BT_CTLR_ISOAL_PSN_IGNORE
Temporarily ignore the Tx ISO Data Packet Sequence Number use
as the tester app does not have yet a synchronization mechanism for
the sequence number and it constantly fails to send ISO data on time.

Signed-off-by: Magdalena Kasenberg <magdalena.kasenberg@codecoup.pl>
2024-01-25 09:04:02 +01:00