Commit graph

91774 commits

Author SHA1 Message Date
Lukasz Madej e9eb1d841e drivers: charger: charger_max20335: fix argument name
Rename `current_uv` argument name to `voltage_uv` in function
max20335_get_constant_charge_voltage() to make the name aligned with
its usage.

Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
2024-03-05 18:23:12 +00:00
Lukasz Madej d8ebe7b6c9 drivers: charger: charger_max20335: rename status get function
Current driver handles charger status only but the charger chip
provides plenty of different statuses. Change name of
max20335_get_status() function to max20335_get_charger_status()
to make further implementations easier.

Signed-off-by: Lukasz Madej <l.madej@grinn-global.com>
2024-03-05 18:23:12 +00:00
Michal Smola fe381858b7 boards: mps2: Disable qemu host pty on Windows
pty is not available on Windows hosts. Running a sample in Qemu
on Windows shows an error. Fix it by enabling pty on Unix hosts only.

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2024-03-05 18:23:00 +00:00
Anas Nashif 5e7286fac5 ci: codecov: fix platform names for hwmv2
Replace / with _ in platform names when generating files.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-05 12:44:29 -05:00
Gerard Marull-Paretas 16a6063083 manifest: remove .git suffixes from repo-paths
Some entries had the .git suffix in the repo-path property. While it
does not affect e.g. clones, it makes the project URL (built using base
url and repo-path) unusable to build other URLs (e.g. to point to a
commit, release tag, etc.).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:51:12 +00:00
Peter Mitsis 590e4f3a82 tests: latency_measure: Add k_stack object support
Updates the latency_measure test to add support for benchmarking
k_stack_push() and k_stack_pop().

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2024-03-05 16:50:47 +00:00
Gerard Marull-Paretas 9911d6bba0 samples: drivers: mbox: fix hwmv2 issues
Some board names were not ported to HWMv2 scheme.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas ceb1e70bb5 samples: drivers: mbox: add support for nRF BELLBOARD
Add support for testing BELLBOARD between cpuapp (local) and cpuppr
(remote).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas 0b38425f6d drivers: mbox: nrf_bellboard: add initial driver
Add a new driver for nRF BELLBOARD peripheral, in both local and remote
modes.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas dec5ab382f dts: nordic: nrf54h20_enga: add BELLBOARD nodes
Add nodes for APP/RAD BELLBOARD peripherals.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas ffaa9077eb dts: bindings: mbox: add nordic,nrf-bellboard-local|remote
Add new bindings to describe the BELLBOARD peripheral in its two
_programming modes_ local or remote.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas 5715691562 samples: drivers: mbox: add support for nRF VEVIF
Add support for nRF VEVIF.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas caeedb4663 samples: drivers: mbox: misc cleanups/enhancements
- Include cleanup
- s/NET/REMOTE (remote core may have nothing to do with NET)
- Improved error reporting

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas d3624a2d4a samples: drivers: mbox: allow to enable RX/TX
This can be useful to provide multiple setups, eg unidirectional
ping-pong.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas b7378bbd14 samples: drivers: mbox: allow to configure RX/TX channels
By adding Kconfig options for both samples.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas 78c40fe31b drivers: mbox: add initial driver for nRF VEVIF
Add a mailbox driver for VEVIF. The driver can be built in either
'local' or 'remote' configuration. This depends on the existence of the
'interrupts' property, which signals that the instance is managed
locally. VEVIF is, as expected, always managed by a VPR core.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas d23ea62be9 drivers: misc: nordic_vpr_launcher: initialize earlier
Set driver to initialize at early POST_KERNEL, so that we make sure
other future dependencies priorities (eg VEVIF) do not conflict.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Grzegorz Swiderski ae21f7bab3 boards: nrf54h20pdk: Add default IPC configuration
Add `zephyr,ipc-icmsg*` nodes, with mboxes specified in a common file.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
Signed-off-by: Gerard Marull-Partetas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Grzegorz Swiderski be5403fe65 boards: nrf54h20pdk_nrf54h20: Update memory map
Add IPC shared memory regions in the global RAM, as well as an enlarged
SRAM region for Application core.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas b823bacecb dts: nordic: nrf54h20_enga: add PPR VEVIF nodes
Add a new nodes for PPR's VEVIF. In app cores, VEVIF registers are part
of the VPR peripheral, so it is exposed as a child node (since it
requires its own properties, eg #mbox-cells). In VPR, it's a CPU child
since it's not a memory-mapped peripheral, but used with CSRs.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas d84e806c34 dts: bindings: mbox: add nordic,nrf-vevif-local|remote
Add a new binding for Nordic VEVIF (VPR Event Interface) (local and
remote modes).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Laurentiu Mihalcea 8fec5f361c tests: devicetree: check L2 interrupt encoding
Add some assert statements meant to check if L2 interrupts
are encoded right when dealing with nodes that consume interrupts
from multiple aggregators. For this to work, also add another
interrupt controller node which extends a different L1 interrupt
from `test_intc`.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-03-05 16:50:18 +00:00
Laurentiu Mihalcea 3799e0f498 devicetree.h: switch to DT_IRQ_INTC_BY_IDX for L2 and L3 INTID encodings
Using `DT_IRQ_INTC()` to fetch the interrupt controller associated
with a node works well for nodes which consume interrupts from a
single aggregator. However, when specifying multiple (and different)
interrupt aggregators via the `interrupts-extended` property,
the L2 and L3 interrupts will no longer be encoded properly. This
is because `DT_IRQ_INTC(node_id)` uses `DT_IRQ_INTC_BY_IDX(node_id, 0)`
so all the interrupts will use the first aggregator as their parent.
To fix this, switch from using `DT_IRQ_INTC()` to `DT_IRQ_INTC_BY_IDX()`.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-03-05 16:50:18 +00:00
Laurentiu Mihalcea fe4b559421 dts: bindings: nxp,edma: force dma-cells number to 2
To allow EDMA configuration with the help of the DT_INST_DMAS_*
and DT_DMAS_* macros, all that a consumer node needs to know
is which channel to configure and what MUX value needs to be
used. As such, this commit allows doing this by forcing the
dma-cells property to 2, each cell representing one of the
aforementioned properties.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-03-05 16:57:19 +01:00
Fin Maaß 1b76f828c9 tests: net: dhcpv4: add comments to sample packets
To make the content of the sample packets more more
understandable, comments describing it are added.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-03-05 10:22:21 -05:00
Matthias Breithaupt 2f84e7be83 tests: net: dhcpv4: tests for encapsulated vendor specific option callbacks
Add tests for the encapsulated vendor specific option callback API.
These test cases are focused on correct parsing of encapsulated
vendor specific options.
The sample DHCP messages have been extended accordingly.

Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Co-authored-by: Fin Maaß <f.mass@vogl-electronic.com>
2024-03-05 10:22:21 -05:00
Fin Maaß c148dc15fd net: dhcpv4: add vendor specific option callback
In certain scenarios, it may be necessary to get values of additional
options from the application layer. With this patch, this can be
accomplished by registering a callback with the DHCP client.

This change has been tested using the posix build in qemu.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-03-05 10:22:21 -05:00
Thomas PUJOLLE 4dae6623bc Bluetooth: BT_HCI_RESERVE set to 1 if BT_SILABS_HCI
Was previously causing execution errors due to default value 0

Signed-off-by: Thomas PUJOLLE <TPU24175@open-groupe.com>
2024-03-05 16:00:30 +01:00
Florian La Roche e8b843b913 net: shell: keep event_mon_handler compatible to k_thread_entry_t
Nearly all other code places for k_thread_entry_t also keep
unused params in place to stay compatible with k_thread_entry_t.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2024-03-05 14:58:29 +00:00
Lukasz Mrugala 621b621007 script: tests: Blackbox test expansion - report
Adds tests related to report flags:
*     --enable-size-report
*     --detailed-skipped-report

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:58:12 +01:00
Lukasz Mrugala dc68b11432 scripts: tests: Blackbox test expansion - testlist
Adds tests related to the flags creating testlists:
* -E, --save-tests
* -F, --load-tests

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:57:25 +01:00
Lukasz Mrugala 8b1ef285cb scripts: tests: Move --quarantine-list test to test_quarantine.py
Brings the previously-created --quarantine-list test
to its test section file.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:57:09 +01:00
Lukasz Mrugala 6ae873d4c2 scripts: tests: Blackbox test expansion - quarantine
Adds tests related to the quarantine flags:
*     --quarantine-verify

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:57:09 +01:00
Lukasz Mrugala c0d6e9f29b scripts: tests: Blackbox test expansion - printouts
Adds tests related to the flags
creating alternate printouts instead of
running Twister tests:
* -z, --size

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:56:53 +01:00
Lukasz Mrugala 93a377e674 scripts: tests: Blackbox test expansion - outfile
Adds tests related to the changing of the output files:
* -c, --clobber-output
* -n, --no-clean
* -M, --runtime-artifact-cleanup
*     --short-build-path
*     --prep-artifacts-for-testing

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:56:04 +01:00
Lukasz Mrugala 600c4d8a45 scripts: tests: Blackbox test expansion - filter
Adds tests related to the flags
that filter the tests:
* -e, --exclude-tag
* -S, --enable-slow
*     --enable-slow-only

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:55:27 +01:00
Lukasz Mrugala 32f4c17374 scripts: tests: Blackbox test expansion - output
Adds tests related to the flags
that change the console outputs:
*     --detailed-test-ids
*     --no-detailed-test-ids
* -i, --inline-logs

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2024-03-05 15:54:13 +01:00
TOKITA Hiroshi ca520f8493 drivers: display: Add LED-Strip matrix display driver
Adds a driver for a display of LED strips arranged in a grid.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2024-03-05 09:44:24 -05:00
Tom Burdick 0b980e1bae i2c: Add rtio support to mcux lpi2c driver
A seperate driver for NXP's LPI2C using RTIO and the I2C RTIO context
rather than semaphores, allowing for work to be done from any call
context at any time.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick 0dbc3d712c i2c: Use i2c_rtio context in sam twihs driver
Updates the sam twihs rtio driver to use a common i2c_rtio context
object and fixes a few logic issues currently in the driver in the
process.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick bafac2c689 i2c: Add helpers and context for i2c rtio drivers
Implementing RTIO drivers, in theory, should be as simple as the normal
i2c drivers and generally be more consistent across implementations. To
do that some common code that calls driver specific code is needed much
like the venerable spi_context and its helpers.

This adds struct i2c_rtio as well as helpers to perform blocking i2c
transfers, i2c bus recovery, and similar such tasks.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick bbe8833f25 i2c: Add submissions queue/completion queue bind
To enable per peripheral queue pool sizing options add some bindings to
the i2c controller to setup sq/cq pool sizing.

Its possible this could go away with a shared application pair of pools.

The shared pool would require some added function pointers though to
deal with the variants as the shared pools would need a lock.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick e8b528321a i2c: Select rtio when I2C_RTIO is selected
Rather than a depends on, which leaves it up to every single usage
of I2C_RTIO to then go and select RTIO, by selecting I2C_RTIO Kconfig
inherently selects RTIO now.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick ab590fdb28 rtio: Drop include for toolchain.h
It's not needed and was likely accidently automatically included by
clangd lsp at some point.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick 1fb449c9bc rtio: Align i2c flags with i2c.h flags
Aligns the flags in rtio.h for i2c with those in i2c.h

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick 4c8b1e2d1e rtio: Add I2C configure operation
In order to serialize all of the i2c functionality an added op code for
configuring the i2c controller was needed. Thankfully very simple.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick 1fd7de6ade rtio: Add support for i2c recovery command
Adds support for the i2c recovery operation as an opcode in RTIO

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Tom Burdick c3a0ea02a7 i2c: Add a new API test using (f/s/nv)ram
RAM allows for very fast reads and writes and lets us explore most of
the I2C controller APIs including RTIO. Theoretically supports any form
of i2c connected RAM but requires some tweaking to work with specific
parts potentially. Tested with Fujitsu's MB85 FeRAM part using an
arduino breakout.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-03-05 09:43:38 -05:00
Andy Sinclair a14abeb2e6 dts: bindings: regulator: Added regulator-boot-off to allowlists
Added regulator-boot-off to property-allowlist for adp5360, npm1300,
npm6001 and axp192.

Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
2024-03-05 09:43:17 -05:00
Andy Sinclair 16fdc4bc9f tests: drivers: regulator: added regulator-boot-off tests
Added tests for new regulator-boot-off property.

Signed-off-by: Andy Sinclair <andy.sinclair@nordicsemi.no>
2024-03-05 09:43:17 -05:00