Commit graph

93017 commits

Author SHA1 Message Date
Marco Widmer 1a899ee414 modules: hal_nordic: nrfx_glue: Fix unused argument
NRFX_IRQ_PRIORITY_SET is defined as empty. This causes an unused
argument warning in many callers (e.g. nrfy_gpiote_int_init). Fix it by
using ARG_UNUSED for the priority argument.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2024-03-26 11:19:05 -05:00
Marco Widmer 0e46701d6d modules: hal_nordic: nrfx_glue: Fix coding style
We will touch these lines in the next commit. Convert the comment style
to C89 instead of C99 and the indentation to tabs instead of spaces.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2024-03-26 11:19:05 -05:00
Immo Birnbaum e9bc58bc75 drivers: gpio: xlnx_axi: fix polling mode
Fix compiler errors and warnings that are issued when compiling this
driver for use without the optional interrupt facilities.

When interrupts are not enabled for any instance of this device,
there's currently a compiler error in gpio_xlnx_axi_pin_interrupt_configure
due to the function's header being located within the ifdef-block for
interrupt-driven operation.

Fully encapsulate the interrupt-related functions
gpio_xlnx_axi_pin_interrupt_configure, gpio_xlnx_axi_manage_callback
and gpio_xlnx_axi_get_pending_int with ifdefs checking for interrupt
mode inorder to remove compiler warnings caused by those functions
being always present so far, while not being used in the API function
pointer table when all instances of this GPIO controller are operating
in polling mode. This circumstance causes a "declared, but not used"
compiler warning for each of those functions.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2024-03-26 11:18:28 -05:00
Aleksander Wasaznik 171363501a Bluetooth: Move bt_hci_evt_get_flags out of hci_driver.h
This commit removes `bt_hci_evt_get_flags`, and the associated flag
symbols. These symbols no longer serve a purpose in the driver interface
after the removal of `bt_recv_prio` from the interface.

The implementation of `bt_hci_evt_get_flags` is distributed to its
still-existing use sites, `hci_core` and the `hci_driver` in the
controller.

The duplication of code is intentional. This is no longer part of any
interface, and the host-developers expect the host copy of the function
to change or dissapear entierly. This will allow the host implementation
to progress without fear of breaking the controller implementation.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-03-26 11:17:29 -05:00
Aleksander Wasaznik 3d3b5b5a48 Bluetooth: hci_driver.h: Remove bt_recv_prio
Remove `bt_recv_prio` from the HCI driver interface. It's primary
purpose was to be used in conjunction with `CONFIG_BT_RECV_BLOCKING`,
which has been removed.

`hci_raw.c` provided a adapter implementation to make drivers
implementing the `CONFIG_BT_RECV_BLOCKING` interface useable with
`CONFIG_BT_HCI_RAW`. But since `bt_recv_prio` is being removed from the
HCI driver interface, drivers needing the adapter should copy the
adapter implementation as private internals.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-03-26 11:17:29 -05:00
Aleksander Wasaznik b91728619c Bluetooth: host: remove CONFIG_BT_RECV_BLOCKING
This config selects a variant of the HCI driver interface that spills
out host internals unto the drivers and even the Zephyr controller. It
will now be removed in favor of driver interfaces that hide the
internals of the host.

The new default is `CONFIG_BT_RECV_WORKQ_BT`.

Any references to the removed kconfig are refactored out.

Any out-of-tree driver using the removed interface can be easily adapted
by copying the following implementations into the driver as private
functions:

 - `hci_driver.h:BT_HCI_EVT_FLAG_RECV_PRIO`
 - `hci_driver.h:BT_HCI_EVT_FLAG_RECV`
 - `hci_driver.h:bt_hci_evt_get_flags`
 - `hci_raw.c:bt_recv_prio`

In combination these symbols function as a interface adapter. These
symbols will be removed in this PR in subsequent commits.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-03-26 11:17:29 -05:00
Aleksander Wasaznik 03d234d593 Bluetooth: tests: hfc: Avoid reconnecting too fast
The host refuses to connect to a peer with an address that is also used
by a connection object in disconnected state.

Add a guard to prevent `-EINVAL` from `bt_conn_le_create`.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-03-26 11:17:29 -05:00
Lukasz Mrugala fd063d6ae5 scripts: tests: Move --ninja test to test_tooling
Brings the previously-created --ninja test to its test section file.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-26 11:15:41 -05:00
Lukasz Mrugala 8a54236d0b scripts: tests: Blackbox test expansion - tooling
Adds tests related to the Twister tooling:
* -j, --jobs
*     --force-toolchain

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-26 11:15:41 -05:00
Jordan Yates 2e3f8a5f98 doc: _extensions: support snippets option
Support `zephyr-app-commands` being provided with a `snippets`,
option, to specify building with the listed snippets.

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2024-03-26 11:14:46 -05:00
Ravi Dondaputi cdd929ff33 doc: migration-guide-3.7: Add wifi shell connect cmd info
Make note of the modifications done to Wi-Fi connect
command in Wi-Fi shell.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2024-03-26 11:13:21 -05:00
Ravi Dondaputi 73ed81ccce net: wifi: shell: Support BSSID configuration
Add support for BSSID configuration in connect call.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2024-03-26 11:13:21 -05:00
Ravi Dondaputi 8256d02d3a net: wifi: shell: Use getopt API for connect options
Use getopt API to process the arguments passed with connect
command.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2024-03-26 11:13:21 -05:00
Bartosz Sokolski b1b4dc0694 boards: nrf54l15pdk_nrf54l15_cpuapp: add support for PDK 0.3.0
Add support for the PDK 0.3.0

Signed-off-by: Bartosz Sokolski <bartosz.sokolski@nordicsemi.no>
2024-03-26 11:10:46 -05:00
Kamil Paszkiet 2a4332ba5f scripts: tests: Blackbox test expansion - error
Adds tests related to filter flags:
--overflow-as-errors

Signed-off-by: Kamil Paszkiet <kamilx.paszkiet@intel.com>
2024-03-26 11:10:02 -05:00
Alberto Escolar Piedras 8d7982cde2 MAINTAINERS: Tweak nRF BSIM filters
The exclusion filter for bsim tests is currently
too broad. There is "infrastructure" files inside
these folders (not just in the top level folder)
and users may add more.
So let's change the filter to exclude tests source,
cmake and kconfig files, but catch the rest.

Also the documentation for the tests and workflows
were missing.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-26 12:02:17 -04:00
Jukka Rissanen 9fb8d511e1 net: if: Set default interface name if needed
If the driver does not set the interface name, then set
a default name for it.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2024-03-26 12:01:51 -04:00
Daniel DeGrasse 35e15b522e boards: nxp: frdm_mcxn947: documentation fixes
Correct a few issues with the documentation that were causing rendering
issues, as well as the following changes:
- added blurb to debug section clarifying that the default debugger
  firmware supports LinkServer
- updated serial terminal output with board name given when building
  with HWMv2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-26 12:00:55 -04:00
Daniel DeGrasse 5ffc76e626 boards: nxp: frdm_mcxn947: fix debug access to secure RAM and peripherals
By default, LinkServer's memory map for the MCXN947 does not define
memory regions for the SRAM or peripheral bus in secure mode. This
results in gdb failing to read from these memory regions unless
explicitly told ignore the debugger memory map via
"set mem inaccessible-by-default off".

To resolve this, define memory regions for SRAM and peripherals in
secure mode via the commandline arguments passed to LinkServer in
board.cmake.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-26 12:00:26 -04:00
Yusuf Ahmed f22d30b853 tests/driver/adc: Add ADC accuracy test
These tests, that expects boards to be properly setup, allow one to
measure ADC value and compare to expected values.

Two tests are added. For one, a reference voltage is expected on the ADC
- and this value can be informed to the test via devicetree. The other
uses DAC to generate a value that is then read from ADC. This assumes
DAC is accurate. Naturally, one could make this a DAC test if ADC is
assumed to be accurate.

As the board setup involve connecting physical pins, they are behind
twister fixtures.

Signed-off-by: Yusuf Ahmed <muhammed.ahmed@intel.com>
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2024-03-26 10:38:01 -05:00
Alberto Escolar Piedras 6514b3b88d bsim tests|samples: Remove uses of the nrf5340bsim hwmv1 boards
Using the old hwmv1 board names is not supported anymore.
So we don't need to handle them specially in the sysbuild
files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-26 10:35:34 -05:00
Alberto Escolar Piedras 96d5544670 boards nrf5340bsim: Remove hwmv1 compatible board definitions
To use this functionality one must now use the hwmv2 naming
(nrf5340bsim/nrf5340/cpu{app,net}).
The old hwmv1 compatible names for these targets,
were left provisionally while all tests in tree were ported.
That being now done, these old names can be removed.

After this change one cannot build anymore
targeting nrf5340bsim_nrf5340_cpu{app,net}
but must instead build targeting
nrf5340bsim/nrf5340/cpu{app,net}
For twister tests the old name were already not valid.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-26 10:35:34 -05:00
Jeppe Odgaard 2fdf88f71c tests: dac: overlay: change spi addresses to lowercase
Change to SPI address to lowercase to fix compile warning.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 11:24:50 -04:00
Jeppe Odgaard 4b15e48b98 tests: adc: boards: native_sim: fix spi addresses and missing test_gpio
Give each SPI node a unique address to fix warnings.
Add missing test_gpio to fix compile error for last node.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 11:24:50 -04:00
Anas Nashif f6801abe65 MAINTAINERS: twister: update collaborators
Update collaborators for twister based on activity.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-26 11:24:08 -04:00
Chun-Chieh Li d1a468bac9 boards: numaker_pfm_m467: remove unsupported runners nulink and canopen
Remove nulink and canopen for unsupported

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2024-03-26 11:21:48 -04:00
Chun-Chieh Li e9dc52c905 boards: numaker_pfm_m467: change default runner to pyocd
PyOCD is preferred for better support.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2024-03-26 11:21:48 -04:00
Fabio Baltieri 55c14e6fa6 input: analog_axis: rework deadzone calibration code
Rework the data scaling algorithm for the "deadzone" mode so that the
deadzone is subtracted from the input rather than from the output. This
makes the whole output range usable rather than making the output jump
from the center value to the minimum deadzone range.

This changes the calibration data structure as well so now all values
refer to the input data, which is more coherent.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-26 11:10:10 -04:00
Fabio Baltieri 1b2bb0dbf2 input: analog_axis: fix the variable name for calibration
Use a coherent name for the calibration data structure variable name.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-26 11:10:10 -04:00
Juliane Schulze 5254c153b9 sensor: tmag5273: fix switched mask/value argument in FIELD_GET
This somehow worked without problems during the test runs, but we found a
corner case where this leads to an error.

Signed-off-by: Juliane Schulze <juliane.schulze@deveritec.com>
2024-03-26 11:04:26 -04:00
Lukas Gehreke 9e06a8a1e6 drivers: uart_pl011: Implemented runtime configure
Implemented runtime configure functions for the driver.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2024-03-26 11:03:13 -04:00
Tom Burdick 95bf346b3b MAINTAINERS: add myself as TDK maintainer
Rather than relying solely on the a single sensor maintainer (Maureen!)
to maintain all sensor drivers in the tree, take on maintainership of
TDK specific sensor drivers myself.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-26 10:54:27 -04:00
Tom Burdick 41f1c3a2b7 sensors: Move TDK sensors to a subdirectory
Move all tdk/invensense sensors to a subdirectory named after the
vendor.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-26 10:54:27 -04:00
Marco Widmer 2ebb8fad7e pm: only define slots if CONFIG_PM is enabled
The pm_device_slots section is only used by subsys/pm/pm.c. This file is
only compiled if CONFIG_PM=y. pm_device_slots is unused otherwise.

Don't populate pm_device_slots when CONFIG_PM=n, CONFIG_PM_DEVICE=y.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2024-03-26 10:51:23 -04:00
Hessel van der Molen 17d2906cca scripts/size_report: display object address in overview
Shows RAM/ROM address of object in RAM/ROM-report.

Signed-off-by: Hessel van der Molen <hvandermolen@dexels.com>
2024-03-26 10:49:04 -04:00
Daniel Schultz f02170bd9f samples: driver: memc: Fix print argument
The sample wants to print the memory controller base address. However,
MEMC_BASE is used as argument in printf which is defined as long long
int. Use the memc pointer instead to print the base address.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-03-26 10:48:18 -04:00
Daniel Schultz 21411f4678 samples: drivers: memc: Fix README
The output example has not the correct indentation for the code-block
directive and therefore adds this output as normal text.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-03-26 10:48:18 -04:00
Daniel Schultz 0329aab044 samples: drivers: memc: Make sample more verbose
During a memory mismatch, the sample only prints an error message.
Also print the read and write buffer to see the actual difference.

Moreover, add a print for each compare step to see the sample is still
running.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-03-26 10:48:18 -04:00
Daniel Schultz d4965bf6c8 samples: drivers: memc: Add missing include
Add string.h because memcpy requires this include file.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-03-26 10:48:18 -04:00
Bartosz Sokolski f4d55e7f68 drivers: nrf_qspi_nor: Add option for 2bit IO
Add missing NRF_QSPI_READOC_READ2IO option handling
to enable 2bit IO

Signed-off-by: Bartosz Sokolski <bartosz.sokolski@nordicsemi.no>
2024-03-26 10:47:20 -04:00
Jeppe Odgaard d1d6938a16 drivers: sensors: grow_r502a: remove all unused drv_data
Fix compile warnings cause by removing drv_data in some functions.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 10:46:30 -04:00
Jeppe Odgaard 69e1d86371 tests: build_all: sensor: uart: add fcx_mldx5
Add FCX_MLDx5 uart node in the build_all tests.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 10:46:30 -04:00
Jeppe Odgaard 83957729dd drivers: sensors: add fcx-mldx5 o2 sensor
Add driver for Angst+Pfister O2 sensors FCX-MLD25 & FCX-MLD95 and maybe
more. Tested with FCX-MLD25.

Supports get O2 value, get status, and power management.

Note that in suspended power mode heating output is at 20 %, thus
probably not suited for a battery powered device.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 10:46:30 -04:00
Jeppe Odgaard 29cc0e6aed sensor: add SENSOR_CHAN_O2 enum value
Add an enum value to support O2 sensors.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 10:46:30 -04:00
Jeppe Odgaard 13e9e22092 dts: bindings: add fcx_mldx5 support
Add bindings for the FCX-MLDx5 O2 sensor.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 10:46:30 -04:00
Jeppe Odgaard 3cad436050 dts: bindings: add ap vendor prefix
Add vendor prefix for Angst+Pfister.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-03-26 10:46:30 -04:00
Krzysztof Chruściński 8bc5111c27 drivers: serial: uart_async_rx: Optimize RAM usage
Since there is only one consumer of the data stored in the buffers,
it is enough to have one read index variable which can be stored in
the data associated with the module and not in the buffer space (where
there is a read index for each buffer).

Additionally, we can safely assume that module works with small buffers
so 127 byte limit is enough. Based on that assumption completed flag
can be stored on a single byte together with write index. After this
change, control data for each buffer takes 1 byte (3 bytes previously).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-03-26 10:46:02 -04:00
Krzysztof Chruściński 17dc3da35d drivers: serial: uart_async_rx: Fix race condition
There was a wrong order of conditions checking. First indexes were
compared and then completed flag was checked. It was possible that
after checking first condition context is preempted and new data
is written to the buffer and completed flag is set. In that case
both conditions are met but data added in preemption is dropped.
In order to avoid that completed flag must be checked first.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-03-26 10:46:02 -04:00
Krzysztof Chruściński d2bd82eb5f drivers: serial: uart_async_rx: Add return value to consume function
Return availability of free buffers after data is consumed. This
information may be important for the module using uart_async_rx to
schedule next reception if there is a new buffer available.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-03-26 10:46:02 -04:00
Krzysztof Chruściński 65b42260f7 drivers: serial: uart_async_rx: Add buffer release to consuming function
Add buffer releasing to consuming function to allow better buffer
utilization since buffer is available earlier.

Note that releasing in claiming function is still needed as there
are cases when there are empty but completed buffers and those
need to be consumed in claiming phase.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-03-26 10:46:02 -04:00