Fix compiler warnings in the UART emulator header file. By explicitly
adding the include for the Zephyr device.
Signed-off-by: Oscar Goldring <oscar@goldring.dev>
Update release notes 3.4 with description of
EXTRA_CONF_FILE, EXTRA_DTC_OVERLAY_FILE, and EXTRA_ZEPHYR_MODULES.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Update Zephyr modules documentation to use EXTRA_ZEPHYR_MODULES.
This gives a more consistent naming scheme in Zephyr CMake build system.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Align Zephyr modules with other user facing variables where settings
can be defined or extended, meaning Zephyr modules now supports:
ZEPHYR_MODULES and EXTRA_ZEPHYR_MODULES.
Support for ZEPHYR_EXTRA_MODULES is kept foir backward compatibility.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Introduce EXTRA_CONF_FILE and EXTRA_DTC_OVERLAY_FILE and remove old
references to OVERLAY_CONFIG.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Align sysbuild with Zephyr CMake so that sysbuild supports
SB_EXTRA_CONF_FILE. Keep support for the old SB_OVERLAY_CONFIG.
This ensures that sysbuild is consistent with Zephyr CMake configuration
file handling.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Update package_helper.cmake to use EXTRA_CONF_FILE instead of deprecated
OVERLAY_CONFIG variable.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
This commit introduces EXTRA_DTC_OVERLAY_FILE.
This allows users to specify additional devicetree overlays in addition
to a sample / board specific default devicetree overlay files.
It also allows snippets to provide extra devicetree overlays on addition
to sample / board specific overlays.
The name EXTRA_DTC_OVERLAY_FILE clearly indicates the purpose and
follows the naming scheme of EXTRA_ in front of variable name.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
This commit introduces EXTRA_CONF_FILE and deprecates OVERLAY_CONFIG.
It has often caused confusion that OVERLAY_CONFIG adds extra
configuration fragments to the value of CONF_FILE (default: prj.conf),
but the similar named variable DTC_OVERLAY_FILE replaces the default
dtc overlay file used by the build system.
To remove such confusion, this commit introduces the EXTRA_ prefix in
front of CONF_FILE to clearly indicate it's purpose.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
This commit extends zephyr_get() to support multiple variable names to
be fetched into a single variable.
Example:
zephyr_get(FOO VAR FOO_A FOO_B FOO_C)
will lookup each FOO_A, FOO_B, FOO_C for supported scopes and return
the value in FOO of the first scope encountered having one of the
variables defined.
If MERGE is specified, then all scopes for all vars are looped and the
variable values are merged into FOO and returned.
This functionality will allow to deprecate user-facing settings while
ensuring that both the new and deprecated variables are considered
in zephyr_get() and also taking into consideration the scope with
highest precedence.
This allows Zephyr CMake to do:
zephyr_get(FOO VAR FOO DEPRECATED_FOO)
zephyr_get(BAR MERGE VAR BAR DEPRECATED_BAR)
This allows support of old and new setting for a given number of
releases.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
This is usually needed for reliable SPI communication when SCK
frequency is >= 4 MHz, so make it the default setting.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
- remove deprecated `label` properties
- add `spi-flash0` alias
- correct `sfdp-bfp` property value to reflect exactly what is returned
by the flash chip
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Changes the warning from being text in Kconfig for filesystem
management as a whole to being a cmake warning which is displayed
if the user has not enabled file access hooks with a link to the
documentation on how to set them up.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Add a config to decide if a new dedicated thread for Host Command is
created during initialization.
If not, the ec_host_cmd_task has to be called by another thread to
handle host commands.
Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
Add a new _test_ that is used to build all regulator drivers. SoC
regulators, such as Raspberry Pi Pico core supply are excluded as they
are typically built as part of the platform.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
The mcumgr subsystem as a whole is already maintained by @nordicjm
(#57780) and I am no longer actively using mcumgr, so removing myself
from the equation and letting more capable hands take over.
Signed-off-by: Mikkel Jakobsen <mikkel.aunsbjerg@escolifesciences.com>
The function nrf_reset_network_force_off contains workaround for
errata 161 for nRF5340 SoC. This function should be used instead of
manual writing to NRF_RESET->NETWORK.FORCEOFF register.
Signed-off-by: Andrzej Kuroś <andrzej.kuros@nordicsemi.no>
The command at most takes 11 args. argc = num of args + 1 (command
name) => 12. We substruct 3 from argc (cmd name, mod id, addr). This
gives argc = 9 when all args are provided for vendor model.
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Shield's Kconfig.defconfig files should only be used to configure
components options, or drivers specific (eg init priority, ..), depending
on driver activation which remains application responsibility.
High level components (such as DISPLAY) should not be enabled by default on
boards activation (which is similar to policy used for boards).
Additionally, clean up busses activation (SPI, I2C), which is not required
as bus activation is already done automatically on bus devices activation.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Before Kconfig clean up to be performed in boards/shields, update samples
to enable the components they require.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
If an operational amplifier is used on the DAC output it is
preferrable to disable the DAC output buffer.
Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
Make it possible to be able to change speed and duplex for the
STM32H7xx and API_V2 from the configuration settings.
This exists for the non-STM32H7x already today, so this is basically
copying the code for the other STM32's.
Please note that ST has a series incompability. For F1 and F2,
the duplex settings are named ETH_MODE_FULLDUPLEX respective
ETH_MODE_HALFDUPLEX. For F4, H7 and F7 the duplex settings are named
ETH_FULLDUPLEX_MODE respective ETG_HALFDUPLEX_MODE.
This should really be queried from the PHY (as previous programmer have
written in the code). But while waiting for a proper PHY solution,
this is intended as a stop-gap solution.
Signed-off-by: Stefan Petersen <spe@ciellt.se>
Since aadca692b3
the board code already sets the stdout/err buffering,
even if there is no console driver;
So there is no need to set it also in the console driver.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The scope for the burst number for tx and rx is currently at module
level in both lll_central_iso.c and lll_peripheral_iso.c
This PR puts the scope to the lll level
Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>
Minimal requirements for nanopb were not accurate
to allow its usage (and causing related tests to build fail).
This change updates requirements for protobuf (>=3.20.3) and
grpcio-tools (>=1.47.0) to use protocol buffer.
Fixes#56103
Signed-off-by: Katarzyna Giądła <katarzyna.giadla@nordicsemi.no>
Chain-load images might behave differently comparing to the usual
standalone boot, as for example some peripheral initialization
might be done already.
Add an additional test with CONFIG_ASSERT=y as enabled asserts
could break up chain-loaded image.
Signed-off-by: Denis Mingulov <denis@mingulov.com>
It is possible that stm32_clock_control_init function is started
when the image is chain-loaded and hardware clocks are already
initialized to some state (PLL1).
Currently due to an assert in get_startup_frequency function
(which will trigger k_fatal_halt) the boot will stop on the
early stage if CONFIG_ASSERT=y. This is reproducible for example
with standalone MCUboot and TF-M with MCUboot.
Fixed by adding support for HSE and PLL1 clock sources at
get_startup_frequency.
Signed-off-by: Denis Mingulov <denis@mingulov.com>
This adds code to always map data TLB for VECBASE so that
we would be dealing with fewer data TLB misses during
exception handling. With VECBASE always mapped, there is
no need to pre-load anymore.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This moves the TLB miss handling to the C exception handler.
This also allows us to handle page faults (for example,
unmapped pages) during this time as any more exceptions
handled in the C handler will not trigger the double
exception handler but the same C handler.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Instead of being able to arbitrarily set the PTEVADDR for page
table, this provides choices (currently just one). This is in
preparation to enable handling memory management exception in
C code. For that to work, we will need to pre-load the page
table address (PTEVADDR) for the memory page containing
exception code and data (containing jump addresses), and
various stacks. This is to prempt any TLB misses during handling
the level 1 interrupt code. If a TLB miss is encountered during
handling of level 1 interrupt, we will be thrown into double
exception handling code where we will get stuck in infinite
loop. However, in order to pre-load the page table entries,
PTEVADDR needs to be calculated. This requires the use of
PTEVADDR base which cannot be loaded via l32r, as we may cause
a data TLB miss. So we must be able to grab the PTEVADDR base
address strictly within code, and must be without any data
load. So changing CONFIG_XTENSA_MMU_PTEVADDR to be based on
choice so we can have pre-defined bit shift value for shift
operation. This shift value will be used in exception handling
code.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Add a build option to tell if memory should be mapped in cached
and uncachedr regions.
If the memory is neither in cached nor uncached region it is not double
mapped.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
z_page_frame can't be packed on Xtensa due memory alignment
constraints. When this is struct is packed it is 5 bytes long it will
cause an memory alignment problem on Xtensa.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Initial support for Xtensa MMU version 3. It is using a two level page
table based on fact that the page table is in the virtual space. Only
the top level (page directory) is wired mapped in the TLB to avoid
second level page miss.
The mapped memory is completely fragmented in multiple sections, maybe
we find a better way in future.
The exception handler is where we effectively map the memory, the way it
works is:
1) SW try to access some memory address
2) The address is not mapped, so the MMU will try the auto-refill,
looking the page table
3) The page table contents is not mapped (remember, just the top-level page
is mapped)
4) An exception will be triggered, in the exception we try to read the
portion of the page table that maps the original address
5) The address is not mapped, so the MMU will try again the auto-refill.
This time though, the address is mapped by the top level page that is
properly mapped. (The top-level page maps the page table itself).
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Add enabled vbat node for all boards of supported STM32 SoC series which
have the required adc node enabled.
Add volt-sensor alias pointing to said vref node.
Signed-off-by: Kenneth J. Miller <ken@miller.ec>
Add enabled vref node for all boards of supported STM32 SoC series which
have the required adc node enabled.
Add volt-sensor alias pointing to said vref node.
Signed-off-by: Kenneth J. Miller <ken@miller.ec>