TX status macro is different for MAX32650 SoC.
The common macro is added to the hal.
This commit changes the tx status macro with
the common one.
Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
This commit adds a test that checks if disconnecting
and restarting the IPC session works correctly. The
test is also focused on the "unbound" callback.
Signed-off-by: Dominik Kilian <Dominik.Kilian@nordicsemi.no>
Co-authored-by: Radoslaw Koppel <radoslaw.koppel@nordicsemi.no>
In some cases, CPUs that may need to reset or
temporary stop communication. This commit adds "unbound"
functionality that provides a callback to IPC service user
when connection was interrupted for some reason, e.g.
expected or unexpected CPU reset, closing the
endpoint. The "unbound" callback is optional to implement
by endpoints. This commit implements it in the ICMsg
backend.
Signed-off-by: Dominik Kilian <Dominik.Kilian@nordicsemi.no>
STM32N6 needs to have a buffer of 32-bit data instead of 16-bit.
Adds a Kconfig to select whether the test shall use a 32-bit buffer.
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
On STM32N6, the register holding the data is 32 bits and DMA must operate
in word transfer to work properly. So we change the type of the buffer in
which we store the ADC data from uint16_t to uint32_t for N6.
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
STM32N6 ADC doesn't have an integrated prescaler, so these properties have
to be removed.
Though the F1 compatible also removes these two same properties, grouping
the N6 with the F1 would not be convenient since there are lots of
differences between the two.
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
This driver includes pin-muxing functions and requires to have
CONFIG_PINCTRL enabled. Automatically set this config when this
driver is enabled.
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
This condition can happen if there is MDNS activity on the network that is
either not according to specifications or not supported by Zephyr.
Lowering the log level from ERR to DBG, since this does not indicate an
error in the Zephyr application.
Signed-off-by: Helge Juul <helge@fastmail.com>
The PAN B511 evaluation board is a development tool for the
nRF54L15 from Nordic Semiconductor.
Signed-off-by: Steffen Jahnke <steffen.jahnke@eu.panasonic.com>
Move to the latest Rust.
This moves the rust support to the latest version of the module:
commit 49c6712fe53b5b82e5c09e94548a4a51a021acfe
Author: David Brown <david.brown@linaro.org>
Date: Wed Feb 12 12:16:22 2025 -0700
zephyr: various comment cleanups from review suggestions
This primarily brings in support for Zephyr Work queues, along with an
implementation of an Async Executor built using work queues and triggered
work to schedule the execution.
Signed-off-by: David Brown <david.brown@linaro.org>
This change splits eth sram region name definition
and configuration.
In the end the configuration is stored only once
er declared name.
This name shall increase readability and maintainability
Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
Add configuration and board overlay in the I2S audio codec sample to
demonstrate usage of the newly introduced audio output feature.
Signed-off-by: Titouan Christophe <moiandme@gmail.com>
The stm32f4_disco board features an audio codec (cs43l22) connected to
an audio jack (TRS) output, and to the stm32f4 via I2S and I2C. To set
this up, several peripherals must be configured:
- Enable I2S3 and the PLLI2S (tuned for 22.05/44.1/88.2 kHz audio)
- Enable DMA1 (used by I2S3)
- Enable I2C1, and add definition for the CS43L22 on the bus
- Disable USART1 and CAN1 which have conflicting pinctrl with I2C1
This new setting is more appropriate, because this gives access to the
audio jack output by default (instead of "bare" pins not connected to
anything on the board).
Signed-off-by: Titouan Christophe <moiandme@gmail.com>
Switch to the common abort implementation so that we can use it
from the assert hooks to avoid undefined behavior.
Closes: 84824
Signed-off-by: Keith Packard <keithp@keithp.com>
The current implementation requires SoCs/Boards to manualy instantiate
the preripherals and initilize them.
The change lets Zephyr rely on the device tree setup to instantiate &
initialize the relevant gpio peripheral.
Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
Add OTGFS peripheral to the stm32h7rs soc series, and enable it on the
Discovery board STM32H7S78-DK, where it is wired to USB Type-C port 2.
Signed-off-by: Titouan Christophe <moiandme@gmail.com>
The Xen extends domain grant tables every time domain requests gnttab
basing on gnttab idx. If idx > xen_current_max_gnttab_idx the Xen extends
grant table so that idx <= xen_current_max_gnttab_idx. The growing grant
tables on every hypercall is a bit costly operation and it also results in
the bunch of log messages:
(XEN) xen-source/xen/common/grant_table.c:1909:d0v0 Expanding d0 \
grant table from 1 to 2 frames
This patch changes gnttab processing from gnttab max_idx to low_idx, so the
first hypercall has the largest index, ensuring that the grant table will
grow only once. It also reduces number of log messages.
Signed-off-by: Grygorii Strashko <grygorii_strashko@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
Initially this driver was a port from mini-os. Michal Orzel
(@orzelmichal) pointed that it contains incorrect grant table
initialization sequence and redundant calls. Driver mapped grant table
frames via loop of XENMEM_add_to_physmap calls and then tried to do the
same but via GNTTABOP_setup_table operation. After completion of latter
it did not even use provided frames list. This did not cause any major
issues, since XENMEM_add_to_physmap correctly map gnttab frames that
were used.
Remove redundant GNTTABOP_setup_table call from grant table driver to
clean up its initialization sequence.
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
Xen allocates a region that should be used as a place for grant table
mapping and passes it via the device tree. By design, this region may
be quite large (up to 4096+ frames/pages), but the number of frames is
usually limited by the max_grant_frames domain parameter (usually 32 or
64).
Linux maps these frames on demand and when reaches mentioned limit
it just stops expanding. At the same time, previous implementation of
Zephyr gnttab driver calculated the number of grant frames by dividing
whole region by page size and tried to map it during init. If the
region specified in the device tree was larger than the
max_grant_frames set by Xen, it would fail on ASSERT, since Xen would
return an error.
To address these issues CONFIG_NR_GRANT_FRAMES was introduced. It
allows to limit size of grant table and map only required number of
pages. Additionally, a check for max_grant_frames Xen limit was
introduced to initialization - if this value will be less than
CONFIG_NR_GRANT_FRAMES, k_panic() will be called.
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
Grant references are allocated via simple O(1) allocator - idx of first
free gref is always stored in the "0" list entry (e.g. list[0] == "A").
Next free gref (e.g. B) will be stored inside list entry with the index
of previous (list[A] == B) and so on. This allows to find free gref
instantly if available. However, current implementation allows a user
to perform a double-free of some taken grefs since it doesn't store any
information about entries being currently claimed. This may cause
gref_list to break.
Add GNTTAB_GREF_USED value and mark all taken grefs with it to prevent
double free in put_grant_entry().
These changes also required updates for allocator and semaphore init
sequences, since we can not use put_free_entry() during driver
initialization anymore.
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
Xen public headers were imported into Zephyr source tree and only used
structs were added (not copied as is). Mow, for refactoring and
improving gnttab driver we need to augment grant table public header
with one more struct. It will be used for reading actual number of
available Xen grant frames.
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
Previously the driver's 'gnttab_unmap_refs()' signature used incorrect
struct - the same one that is used for mapping. Since 'host_addr'
membber, that is used to point to required frame is first in both
structures it somehow worked.
Fix mistake and use 'struct gnttab_unmap_grant_ref' for grant frames
unmapping hypercalls.
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
Added overlay and modified sample.yaml to support the nucleo_wba55cg
board in the MCO example. Due to GPIO conflict, UART print out is not
functional.
Signed-off-by: Lubos Koudelka <lubos.koudelka@st.com>
Added MCO register definition to support MCO functionality in the STM32WBA
series. This update also includes the addition of MCO_PRE_DIV and MCO_SEL
defines.
Signed-off-by: Lubos Koudelka <lubos.koudelka@st.com>
The shell harness expects the UART can be routed to stdin/out on POSIX
arch based targets, but this is not the case for the bsim targets (at
least not yet, and not using the native_posix UART configuration option)
This causes these tests to fail timing out in CI => let's filter these
platforms by now.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Existing logic is passing elf file as parameter only when fsbl
or bit file parameter is present. This is incorrect, elf file should
be always passed irrespective of other parameters.
Signed-off-by: Mubin Sayyed <mubin.sayyed@amd.com>
Add USB support on USBFS port on these boards:
- RA8: ek_ra8m1, ek_ra8d1, mck_ra8t1
- RA6: ek_ra6m1, ek_ra6m2, ek_ra6m3, ek_ra6m4, ek_ra6m5
- RA4: ek_ra4m2, ek_ra4m3, voice_ra4e1
Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>