Commit graph

76996 commits

Author SHA1 Message Date
Emil Obalski baf758dd52 samples: ipc: Remove shared memory clear
Clearing the shared memory is no longer required
after bounding functionality was reworked and an attempt
to read the magic numer is no longer the case.

Signed-off-by: Emil Obalski <Emil.Obalski@nordicsemi.no>
2023-04-03 11:29:08 +02:00
Emil Obalski 5143db540c ipc: Fix icmsg deregister functionality
This change fixes the deregister functionality for
icmsg backend. There are two changes:

Memory access layer was not initialized properly
when the endpoint was registered again. This lead to
memory fault when attepmt to write to the buffer was
done.

Mbox driver was initialized before memory access layer
was initialized. This could lead to race condition
where immediately after the mbox driver was initialized,
the receiving work is scheduled due to pending interrupt.
In that case an attempt to read from garbage address will
occur.

Signed-off-by: Emil Obalski <Emil.Obalski@nordicsemi.no>
2023-04-03 11:29:08 +02:00
Krzysztof Chruscinski fc4606da02 tests: drivers: counter: nrf_rtc: Add delay in the test
Some Nordic platforms start counter with the delay and
test_short_relative_alarm test expects very early alarm,
just after starting the counter. Adding the delay which
is applicable only for counter based on Nordic RTC peripheral.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2023-04-03 11:28:59 +02:00
Krzysztof Chruscinski 3b5c059cf4 Revert "tests: drivers: counter: Relax timing requirement"
This reverts commit 51f452bbf0.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2023-04-03 11:28:59 +02:00
Tom Burdick 06aa17f716 tests: SPI loopback with RTIO
Adds the equivalent spi loopback tests using RTIO and a testplan that
uses it. Adds a tdk robokit1 overlay to enable the NOCACHE option so
that DMA transfers correctly work.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-04-03 09:51:02 +02:00
Tom Burdick dcd9322d43 spi: SAM add RTIO support
Implements the SPI RTIO API. Refactors many of the internal transfer
functions to work on simple types to allow for both the RTIO and existing
SPI API functions to co-exist.

Removes the unneeded shift_master specialization. Either a polling or DMA
transfer flow is used when used with RTIO as all operations are normalized.

When SPI_RTIO is enabled the spi_transceive blocking call translates
the request into an RTIO transaction placed in the queue of transactions
the device is meant to do.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-04-03 09:51:02 +02:00
Tom Burdick d9d24b4d65 spi: Add RTIO support to SPI
Provides a macro and submit API for SPI drivers to support RTIO.

A copy function enables compatibility with the existing blocking API
and very easily the existing async API as well.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-04-03 09:51:02 +02:00
Tom Burdick a539d9c904 rtio: Add transceive op
Adds the transceive op which is needed for full SPI support. Notably
in RTIO transceive is expected to be a balanced buffer pair of the same
length and have non-null tx/rx bufs.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-04-03 09:51:02 +02:00
Tom Burdick 912e7ff863 rtio: Add callback op
Adds a callback op to RTIO enabling C logic to be interspersed with
I/O operations. This is not safe from userspace but allowable in kernel
space.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-04-03 09:51:02 +02:00
Tom Burdick bb72809326 rtio: Add tiny write op
When sending small buffers out it makes sense to copy rather than
reference to avoid having to keep the small buffer around for the
lifetime of the write request.

Adjusts the op numbers to always be +1 from the previously defined op
id making it easier to re-arrange if needed in the future.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-04-03 09:51:02 +02:00
Przemyslaw Bida 172da307d6 net: openthread: Fix OPENTHREAD_CSL_RECEIVE_TIME_AHEAD.
This commit fixed Openthread kconfig option to use correct value and
description of units.

Signed-off-by: Przemyslaw Bida <przemyslaw.bida@nordicsemi.no>
2023-04-03 09:50:53 +02:00
Francois Ramu cef8c3fdd1 samples: drivers: adc for the stm32h5 boards
Add the new nucleo_h503rb board for testing the adc_api driver
on the ADC1 channel6 (pf12). Read the analog value of the ADC1
input on A5 of the arduino connector (CN16).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-04-03 09:50:43 +02:00
Francois Ramu 0b422ed02e tests: drivers: adc for the stm32h573 board
Conifgures the new h573i disco kit board for testing the adc_api driver
on the ADC1 channel0 (on pa0).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-04-03 09:50:43 +02:00
Francois Ramu 6e5ee26eb9 tests: drivers: dac api testing on the stm32h573_dk
Run the tests/drivers/dac/dac_api on the stm32h573_dk disco board
The DAC channel1 is used for testing

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-04-03 09:50:43 +02:00
Francois Ramu 9e2553e5b4 boards: arm: stm32h5 disco kit stm32h573i_dk enables ADC and DAC
Add all DAC and ADC peripherals for the stm32h573i_dk disco kit
ADC1 channel 6 is available on pin PF12
DAC1 channel 1 is available on pin PA4

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-04-03 09:50:43 +02:00
Francois Ramu 3f6a3d6031 drivers: adc stm32adc driver for the new stm32h5 serie
Add the support of the new stm32h5 to the stm32 ADC driver
Note : LL_ADC_CLOCK_ASYNC_DIV6 is the value for getting the
expected results of ADC.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-04-03 09:50:43 +02:00
Francois Ramu 716892e510 dts: arm: stm32h5 adds the ADC and DAC nodes
Defines the ADC1 and DAC1 nodes of the stm32h5 serie.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-04-03 09:50:43 +02:00
Alberto Escolar Piedras 03db441d3d tests bsim: Remove unnecessary BT_TINYCRYPT_ECC selection
There is no need to select BT_TINYCRYPT_ECC as it will
be selected by default if the controller does not
provide BT_CTLR_ECDH[_SUPPORT].
But setting it in the prj.conf will break
for controllers that provide it,
as both host and controller will provide the same APIs.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-04-03 09:50:30 +02:00
Alberto Escolar Piedras 271fea3386 tests bsim: Remove unnecessary controller selection
There is only one controller in upstream Zephyr,
there is no need to explicitly select it, as it
will default to it.
But selecting it prevents other controllers from being
used downstream or with other targets => remove it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-04-03 09:50:30 +02:00
Lucas Tamborrino 6ee9e72909 tests: drivers: pwm: pwm_loopback: add esp32s3 overlay
Add esp32s3 overlay to pwm_loopback test using mcpwm
peripheral.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-04-02 22:08:57 -04:00
Lucas Tamborrino 1b2ec541ce dts: esp32s3: add MCPWM device
Add MCPWM device node to esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-04-02 22:08:57 -04:00
Evgeniy Paltsev 319619b5ee ARC: MWDT: fix build with cpp98 standard
cpp98 doesn't support static_assert, so we shouldn't use it.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2023-04-02 22:08:09 -04:00
Lucas Tamborrino b100ffb1df drivers: spi: esp32xx: Fix word size issue
This commit fixes the word size configuration issue
described in #54746 by considering the data frame size
when trasmitting in case the configuration is applied.

It also fixes an heap corruption problem when using
SPI DMA with a buffer that is not multiple of 32 bits
in lenght and GDMA instance in initialization.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-04-02 22:07:55 -04:00
Fabio Baltieri 08d1b33d07 doc: troubleshooting: update the save-temps instructions
Update the save-temps instruction to mention the new kconfig option
instead of setting EXTRA_CFLAGS directly.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-04-02 22:07:22 -04:00
Fabio Baltieri 3f8f7130e7 kconfig,toolchain: add an option for compiler save-temps
Add a Kconfig option to set the compiler save-temps flag and set the GCC
implementation. This is very useful for troubleshooting macro expansion
issues, having an option allows a user to set it like any other config
option.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-04-02 22:07:22 -04:00
Kumar Gala d82175eadd gpio: fix armclang compiler warnings with is*() functions
We get compile warnings of the form:

error: converting the result of
'<<' to a boolean; did you mean
'((__aeabi_ctype_table_ + 1)[(byte)] << 28) != 0'?
 [-Werror,-Wint-in-bool-context]
                if (!isprint(byte)) {
                     ^

Since isprint (and the other is* functions) return an int, change check
to an explicit test against the return value.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-04-01 12:31:58 -04:00
Ryan McClelland 28bb21cfe6 drivers: i3c: cdns: set tx fifo threshold interrupt to half the fifo
When a controller is running at full SDR speed at 12.5MHz, there needs
to be enough time for the processor get around to writing more data in
the fifo. Previously at -1 the size, this was enough for 1MHz with a
decent processor, but not enough at a 12.5MHz SCL.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2023-04-01 07:37:03 -04:00
Flavio Ceolin 3db1e550c8 pm: device_runtime: Fix documentation
pm_device_runtime_enable and pm_device_runtime_disable
no longer return -ENOSYS.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2023-03-31 16:16:43 -04:00
Daniel Leung 8dda1fe154 pm: mark pm_device_runtime_auto_enable as boot function
When demand paging is enabled, only a minimal set of functions
are available at boot. Anything not marked as boot functions
would not be loading in memory at boot which would result in
page faults when jumping to those functions. However, at early
boot, demand paging has not been enabled yet. So we need to
mark necessary functions as boot functions so they are placed
in the correct linker section where they are loaded at boot.

Fixes #56414

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2023-03-31 14:31:52 -04:00
Henrik Brix Andersen 4f0cfdda80 drivers: can: document return value of 0 for can_get_max_bitrate()
Explicitly document that a return value of 0 from can_get_max_bitrate()
indicates success.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2023-03-31 16:22:16 +00:00
Kotaro SHIOTA 23e764958e boards: arm: nucleo_l152re: Add die-temp0 alias
Add die-temp0 alias to die_temp node.
The die_temp_polling sample uses this alias.

Signed-off-by: Kotaro SHIOTA <shiota.kotaro@fujitsu.com>
2023-03-31 16:21:24 +00:00
Kumar Gala 14d59b3b56 cortex_m: tz_ns.h: Fix compiling with arm-clang
We get the following error when building with arm-clang:

error: non-ASM statement in naked function is not supported
        __TZ_WRAP_FUNC(preface, foo1, postface);
        ^
tests/arch/arm/arm_tz_wrap_func/src/main.c:69:25: note: attribute is here
uint32_t __attribute__((naked)) wrap_foo1(uint32_t arg1, uint32_t arg2,
                        ^
1 error generated.

Remove the do/while wrapper to make this a true naked function.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-03-31 08:43:18 -05:00
Lauren Murphy fb9aefca1f boards: intel_adsp: unify and update docs
Unifies docs into one updated guide with stubs for each platform.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2023-03-31 14:54:12 +02:00
Francois Ramu c36622daa5 tests: drivers: dma testing on the stm32h573i_dk board
Configure the tests/drivers/dma/loop_transfer
and the tests/drivers/dma//chan_blen_transfer
to run on the stm32h573i_dk : use gpdma1 or gpdma2.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-03-31 14:02:15 +02:00
Francois Ramu 170e1a364c boards: arm: stm32h5 disco kit stm32h573i_dk enables dma
Add the DMA instance for the stm32h573i_dk disco kit
from STMicroelectronics.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-03-31 14:02:15 +02:00
Francois Ramu 93a1b61684 drivers: dma: stm32u5 dma driver with two dma instances
Add a second instance of DMA to the stm32 dma driver from the DTS
That can be found in the stm32H5 serie, where 2 GPDMA with 8 channels
are available. Rebuilding with Macro.
Use the dma_channels property of the dedive tree to count the nb
of dma channels: 16 or 8 (like in stm32h5).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-03-31 14:02:15 +02:00
Francois Ramu a6ffea0720 dts: arm: stm32h5 serie adds nodes for GP DMA
Adds the nodes for the GPDMA 1 & 2  peripherals
to the stm32h5 serie.
Each instance has 8 channels and 140 DMA requests.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2023-03-31 14:02:15 +02:00
Alberto Escolar Piedras 5a8897adbc nrf52_bsim: Default 15.4 driver encryption to n
The driver Tx encryption does not work yet in simulation.
Let's disable it by default.
(Encryption at Openthread can be used instead).

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-03-31 14:01:42 +02:00
Théo Battrel ff10a9cf23 Bluetooth: Host: Remove unnecessary guarding
Remove unnecessary guarding. With `BT_DEBUG` removed, those conditions
were not needed anymore.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2023-03-31 14:01:33 +02:00
Kumar Gala b9a63b805e lwm2m: fix armclang compiler warnings with is*() functions
We get compile warnings of the form:

error: converting the result of
'<<' to a boolean; did you mean
'((__aeabi_ctype_table_ + 1)[(byte)] << 28) != 0'?
 [-Werror,-Wint-in-bool-context]
                if (!isprint(byte)) {
                     ^

Since isprint (and the other is* functions) return an int, change check
to an explicit test against the return value.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-03-31 14:01:24 +02:00
Keith Packard 812187a87f west.yml: update hal_atmel to include picolibc compat fix
This update removes the LITTLE_ENDIAN/__LITTLE_ENDIAN defines in all of the
chip-specific headers as those conflict with usage of these macros in
picolibc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-03-31 14:01:12 +02:00
Szymon Janc aa861727e8 bluetooth: tester: Use fixed value for BT_BUF_ACL_RX_SIZE
Default BT_BUF_ACL_RX_SIZE value varies based on selected host options.
Many buffers size (L2CAP COC MPS in particular) depends on that value
and those may affect qualification test cases steps.

To make core tests more predictable just use fixed values big enough to
comply with all configurations requirements.

This was affecting L2CAP/COS/ECFC/BV-04-C.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2023-03-31 14:00:48 +02:00
Shawn Nematbakhsh bf46f73510 tests: Remove references to deleted board "beaglev_starlight_jh7100".
beaglev_starlight_jh7100 board was deleted so remove references to it in
tests/.

fixes: #56398

Signed-off-by: Shawn Nematbakhsh <shawn@rivosinc.com>
2023-03-31 07:13:24 -04:00
Kumar Gala 8d5392513e console: fix armclang compiler warnings with is*() functions
We get compile warnings of the form:

error: converting the result of
'<<' to a boolean; did you mean
'((__aeabi_ctype_table_ + 1)[(byte)] << 28) != 0'?
 [-Werror,-Wint-in-bool-context]
                if (!isprint(byte)) {
                     ^

Since isprint (and the other is* functions) return an int, change check
to an explicit test against the return value.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-03-31 07:05:07 -04:00
Dominik Ermel 0e6c306dce west.yaml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
 143485e35b8da7d234677d8920a28f5ea03f6d09

Brings following Zephyr relevant fixes:
 143485e3 zephyr: Add missing Kconfig dependencies for USB DFU
 16f3de56 imgtool: fix boot_magic when -e big and max-align > 8
 259d989f bootutil: Fix erase of trailer when located in scratch area
 e8294b2a boot_serial: Add packed to struct
 68dcc0ee zephyr: single_loader: Switch to flash_area_get_sector
 069aea48 zephry: Add flash_area_get_sector
 9551b6ef boot: zephyr: Remove deprecated GPIO Kconfig entries
 dc8ef879 zephyr: serial_recovery: Use Zephyr manifest zcbor files
 e026c367 imgtool: sign: allow using 16-bit custom TLVs from valid range

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2023-03-31 10:42:14 +02:00
Peter Fecher a95862bcdc samples: sensor: Add proximity sensor sample
Adds generic sample for proximity sensors.

Signed-off-by: Peter Fecher <p.fecher@phytec.de>
2023-03-31 09:20:36 +02:00
Peter Fecher 924ac2265d drivers: sensor: Add tmd2620 driver
Adds tmd2620 driver and devicetree bindings to work in
trigger and polling mode supporting Power management.

Signed-off-by: Peter Fecher <p.fecher@phytec.de>
2023-03-31 09:20:36 +02:00
Ravi Dondaputi 546abe778d net: wifi_shell: Display correct security type in scan results
In status output, algos like WPA, WEP etc. are not being identified
in the scan results. Instead security mode is being displayed as
"UNKNOWN" for APs using these security modes.
Identify all such modes and display the security mode correctly.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2023-03-31 09:20:29 +02:00
Jordan Yates 41d83d7ea2 lora: compile drivers based on devicetree
Similar to the changes made in #48048, compile in the appropriate lora
modem driver when `CONFIG_LORA=y`. The `LORA_SX12XX` symbol has no
use now so remove. LoRa and LoRaWAN subsystems are still marked as
unstable so no additional deprecation cycle is needed.

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2023-03-31 09:20:22 +02:00
Szymon Czapracki 33bf1fa0c6 Bluetooth: audio: Expand AICS API
This commit adds new API functions for AICS
Setting automatic/manual only gain modes
Setting mute disabled
Use new functions in btp.vcp

Signed-off-by: Szymon Czapracki <szymon.czapracki@codecoup.pl>
2023-03-31 09:20:15 +02:00