This update updates the TraceRecorder module from version v4.6.0
(RC1) to v4.6.3. This update fixes some minor bugs where
deleted threads werent removed from the thread table. This
update is also in preparation for updates which changes
some trace hook arguments in Zephyr.
The update to v4.6.3 also improves syscall tracing by
including the id and name as parameters when logging
these events.
Signed-off-by: Torbjörn Leksell <torbjorn.leksell@percepio.com>
Some EFR32 SoCs use a secure element subsystem to manage
security features (i.e., TRNG, secure bootloader or cryptographic
functions).
This driver relies on the SE Manager high-level API provided by Silicon
Labs. The API interacts with the SE subsystem, provides helper functions
to achieve cryptographic operations and ensures that only one operation
is running at a time by using mutexes and semaphores.
Instead of relying on the SE Manager from Silicon Labs, one could
recreate the behaviour of the Manager and put the code in the crypto
driver folder and create a dependency for other drivers using the crypto
manager (e.g., keys, entropy).
I went for the SE Manager API as it is already there and supported by
Silicon Labs.
Tested using the random subsystem.
Signed-off-by: Steven Lemaire <steven.lemaire@zii.aero>
lwm2m: Regenerate lwm2m_senml code from the CDDL description.
Reapply manual changes.
Create a sh script to perform the regeneration.
tests: zcbor_bulk: Adapt to zcbor 0.5.1
zcbor_new_decode_state() now has no return value.
Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
MCUboot was synchronized up to upstream:
1270880d2f717f9019742f5c450441aaf0504164
- boot_serial: refactoring and optimalization (mainly afects
progressive erase implementation)
- migrate includes to <zephyr/...>
- switched DFU detection GPIO-pin configuration to be done through DTS.
That pin is assigned thanks to `mcuboot-button0` pin-alias.
- boot_serial: Fix echo command code no longer compiling
- Added MCUboot status callback support, see `CONFIG_MCUBOOT_ACTION_HOOKS`
Kconfig option.
- reworked LED usage, prefer DTS mcuboot-led0 alias over bootloader-led0
alias
- Added initial support for leverage RAM-LOAD mode with the zephyr-rtos
port
- boot_serial: Upgrade from cddl-gen 0.1.0 to zcbor 0.4.0
- imgtool: Added support for providing the signature by 3rd party
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
Mostly includes minor maintainability updates:
- ci: Add building the HW models as a github workflow
- irq_sources: Remove unneeded irq_sources.h
- irq_ctrl: Define IRQ names inside HW models
- HW_models: NRF_RADIO: Set missing NRF_RADIO states
- HW_models: NRF_RADIO: Disable radio state while RXDISABLE
- HW_Models: NRF_PPI: Enable ppi task and event for TIMER0 CH3
Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
Pull in a fix in the nrfx_qspi driver for a problem with incorrect
status returned by `nrfx_qspi_mem_busy_check()`.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
For targets without thread local storage, we need to use the builtin
per-thread errno support provided by Zephyr as the multi-thread errno
support provided in picolibc relies on TLS.
Signed-off-by: Keith Packard <keithp@keithp.com>
This code has gone unmaintained and bugs continue to be reported
against it. We do not have the resources as a project to maintain this
in "odd fixes" mode, and nobody has stepped up to maintain it [1], so
sadly this must be removed for now.
If anyone would like to see civetweb supported in upstream Zephyr
again, they are welcome to add it back, as long as they promise to
maintain it going forward.
Many thanks to everyone who has contributed to civetweb support in
Zephyr while it was here. So long and thanks for all the fish.
Fixes: #45807Fixes: #43910Fixes: #34226Fixes: #46743
[1] https://lists.zephyrproject.org/g/devel/message/8466
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
Picolibc is a fork of newlib designed and tested on embedded systems. It
offers a smaller memory footprint (both ROM and RAM), and native TLS
support, which uses the Zephyr TLS support.
By default, the full printf version is included in the executable, which
includes exact floating point and long long input and output. A
configuration option has been added to switch to the integer-only
version (which also omits long long support).
Here are some size comparisons using qemu-cortex-m3 and this application
(parameters passed to printf to avoid GCC optimizing it into puts):
void main(void)
{
printf("Hello World! %s %d\n", CONFIG_BOARD, 12);
}
FLASH SRAM
minimal 8696 3952
picolibc int 7600 3960
picolibc float 12304 3960
newlib-nano int 11696 4128
newlib-nano float 30516 4496
newlib 34800 6112
---
v2:
Include picolibc-tls.ld
v3:
Document usage in guides/c_library.rst and
getting_started/toolchain_other_x_compilers.rst
v4:
Lost the lib/libc/picolibc directory somehow!
v5:
Add PICOLIBC_ALIGNED_HEAP_SIZE configuration option.
Delete PICOLIBC_SEMIHOST option support code
v6:
Don't allocate static RAM for TLS values; TLS
values only need to be allocated for each thread.
v7:
Use arm coprocessor for TLS pointer storage where supported for
compatibility with the -mtp=cp15 compiler option (or when the
target cpu type selects this option)
Add a bunch of tests
Round TLS segment up to stack alignment so that overall stack
remains correctly aligned
Add aarch64 support
Rebase to upstream head
v8:
Share NEWLIB, NEWLIB_NANO and PICOLIBC library configuration
variables in a single LIBC_PARTITIONS variable instead of
having separate PICOLIBC_PART and NEWLIB_PART variables.
v9:
Update docs to reference pending sdk-ng support for picolibc
v10:
Support memory protection by creating a partition for
picolibc shared data and any pre-defined picolibc heap.
v11:
Fix formatting in arch/arm/core/aarch64/switch.S
v12:
Remove TLS support from this patch now that TLS is upstream
Require THREAD_LOCAL_STORAGE when using PICOLIBC for architectures
that support it.
v13:
Merge errno changes as they're only needed for picolibc.
Adapt cmake changes suggested by Torsten Tejlmand Rasmussen
v14:
Update to picolibc 1.7 and newer (new stdin/stdout/stderr ABI)
v15:
Respond to comments from dcpleung:
* switch kernel/errno to use CONFIG_LIBC_ERRNO instead of
CONFIG_PICOLIBC
* Add comment to test/lib/sprintf as to why the %n test
was disabled for picolibc.
v16:
Switch picolibc to a module built with Zephyr. This eliminates
toolchain dependencies and allows compiler settings for Zephyr
to also be applied to picolibc.
v17:
Provide Zephyr-specific 'abort' implementation.
Support systems with MMU
v18:
Allow use of toolchain picolibc version.
v19:
Use zephyr/ for zephyr headers
v20:
Add locking
Use explicit commit for picolibc module
v21:
Create PICOLIBC_SUPPORTED config param. Set on arc, arm, arm64,
mips and riscv architectures.
Signed-off-by: Keith Packard <keithp@keithp.com>
Updates hal_espressif's revision to include:
- latest pinctrl definitions.
- support for building ESP32C3 USB driver
Signed-off-by: Glauber Maroto Ferreira <glauber.ferreira@espressif.com>
This PR introduces a fix for DRX window being triggered to early during
CSL. Fixes were also introduced in the nrf 802154 radio
driver, so removed the unneeded DRX_ADJUST constant.
Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
bring fix from mcu-tools/mcuboot:
- espressif:esp32: Move app entry point call back to
iram_loader_seg region
fixes#45349fixes#46093
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
bring fixes from mcu-tools/mcuboot
- disables CONFIG_USB_DEVICE_REMOTE_WAKEUP as it is unsupported by MCUboot
- fix CONFIG_MCUBOOT_INDICATION_LED usage
- bootutil: zephyr: Fix not including tinycrypt path when needed
- bootutil: zephyr: Fix not linking with mbedtls when needed
- boot: zephyr: add Kconfig for arm cortex-m that implements a cache
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
When newlibc is enabled, memcpy_chk fails due to
overflow when testing destination address length.
This updates the source and destination range defintion
so that it works as expected.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Updates zscilib to support recent changes in zephyr
3.x, such as the `zephyr/` prefix on include files.
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Update the espressif HAL to allow building without having ZEPHYR_BASE set
in the environment.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
The following modules contain code that include Zephyr headers:
- fatfs
- littlefs
- hal_espressif
They have all been update with the <zephyr/...> include prefix.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Espressif boards cannot have ble and wifi
CI build tests due to binary blobs policies.
This removes refered tests.
west.yml: update hal repository to get updates
that allows building using Zephyr's SDK.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
The following HALs contain code that makes use of Zephyr headers, so
they have been updated with the <zephyr/...> prefix:
- Altera
- NXP
- STM32
- TI
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Building documentation in .rst format causes warnings due to
missing nrfx_atomic which is not used in hal_nordic.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
Update the CMSIS fork to import a function required for correct
operation of the CMSIS-NN tests.
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
Align all sensor drivers that are using stmemsc (STdC) HAL i/f
to new APIs of stmemsc v2.01.
Requires https://github.com/zephyrproject-rtos/hal_st/pull/9
(merged as 52a522ca4a8a9ec1e9bb5bb514e1ab6f102863fe)
Signed-off-by: Armando Visconti <armando.visconti@st.com>
This modification is required to enable flash encryption.
Using hal implementation of spi_flash calls maintains
compability amongs different socs while offering
latest esp-idf enhancements.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
This update introduces several bug fixes and improvements:
- correctly handle kscan inputs outside of range
- don't be too verbose with spurious kscan events
- fix the whene param in lvgl's filesystem seek callback
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>
Adding configurations for enabling this sample project on cavs
platforms. This patch also contains a fix to mipi_syst library
which resolves the memory alignment issue across different
architectures.
Fixes#43344
Signed-off-by: Aastha Grover <aastha.grover@intel.com>
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Update to commit <2efc3ea41c0074c6dab5f376fafaa26f52c25c75> ("topology2:
dmic-generic: add support for 4ch capture" from upstream SOF.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
update pin control implementation to use offsets for pin registers
instead of pin/port combination, to permit additional flexibility for
lpc devices with non contiguous register layouts. Update LPC55s69 pin
control names to align with newly generated pin control header.
This change also requires an update to the NXP HAL to use the new pin
control headers with offsets.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Add initial build rules for CHRE. This change includes a Kconfig and
CMakeLists.txt to begin compiling code from the CHRE module.
Additional files are included to bridge the APIs from CHRE's to
Zephyr's. These can be found in modules/chre/include and
modules/chre/src.
Additionally, add a sample to make sure that the module builds. It can
be built via:
```
$ west build -b native_posix -p=always samples/application_development/chre
```
Signed-off-by: Yuval Peress <peress@google.com>
Platform specific functions necessary to enable this feature were
implemented (z_xtensa_ptr_executable() and
z_xtensa_stack_ptr_is_sane() for Intel ADSP platforms.
Current implementation just ensures stack pointer and program counter
are within relevant areas defined in the linker scripts, without going
too fine grained.
Also, `.iram1` section, used by the backtrace code, also added to
Intel ADSP linker script.
Finally, update west manifest to use up-to-date SOF, which contains a
patch to fix build issues related to the linker changes.
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
update hal_microchip revision, which includes mpfs_hal
for Microchip's PolarFire-SoC Icicle Kit.
Signed-off-by: Conor Paxton <conor.paxton@microchip.com>
See #40591 for details, TinyCBOR (or rather the fork of TinyCBOR that we
had) is being replaced by zcbor.
Closes#40591.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Update psa-arch-tests to include fix to watchdog timeout.
This fixes the Protected Storage test suite, which had a too short
watchdog timeout to allow the test-cases to pass.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
A new HAL API was delivered in latest STM32F4 package.
Default to legacy eth API until Zephyr STM32 ethernet
driver is updated to support this new API.
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Update the hal_nordic module revision, to switch to nrfx v2.8.0.
nrfx 2.8.0 includes improvements to SAADC driver that will
allow using nrfx_saadc API directly in the Zephyr ADC shim.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
In particular, the update of mcuboot cause this issue, as mcuboot
changed the type of mcuboot_img_magic which tf-m has fixed upstream.
Signed-off-by: Jimmy Brisson <jimmy.brisson@linaro.org>
The NXP SDK defines CodeQuickAccess and DataQuickAccess sections
for locating critical items that need faster access. Centralize
the handling of these sections instead of doing it per SOC.
Fixes#44453
Signed-off-by: David Leach <david.leach@nxp.com>
- update stm32l4 to cube version V1.17.1
- update stm32wb to cube version V1.13.2 (including hci lib)
- update stm32f4 to cube version V1.27.0
- update stm32u5 to cube version V1.1.0
- update stm32g4 to cube version V1.5.0
- update stm32h7 to cube version V1.10.0
- update stm32f7 to cube version V1.16.2
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Initial addition of the LC3 codec as a module. Usage of the module
will be seperate commits.
Even though this codec is a generic audio codec, it is tagged with
Bluetooth: as it can only be used for LE-Audio. Using the codec for
other purposes is a violation of the granted rights for the codec.
Signed-off-by: Casper Bonde <casper_bonde@bose.com>
Synch up to upstream
https://github.com/mcu-tools/mcuboot/commit/aa041a282d
- Added workflow verifying integration with the Zephyr
- removed deprecated DT_CHOSEN_ZEPHYR_FLASH_CONTROLLER_LABEL
- Fixed usage of CONFIG_LOG_IMMEDIATE
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
Pin control DTSI files need /omit-if-no-ref/ property to reduce
generated devicetree size and improve build times.
Fixes#44262
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
PR #43575 was merged mistakenly with a reference to a PR. Fix this by
pointing to the HEAD SHA of the TF-M fork.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Update trusted-firmware-m to include GPIO service fix.
This would otherwise result in an assert or GPIO pins not assigned
to the network.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
EDTT branch was updated with loads of ISO stuff as well as misc. minor
fixes. Also EDTT branch default is now 'main'
Signed-off-by: Erik Brockhoff <erbr@oticon.com>
Synch up to the upstream:
mcu-tools/mcuboot@4c0f6c177f
Update to the 1.9.0
- boot: Allow larger minimum flash write
- boot_serial: zephyr: Add optional timeout to enter serial recovery
- boot_serial: Adapted to Zephyr's new CRC APIs
- zephyr: Use a smaller sha256 implementation
- boot_serial: Added support for the echo command
- single loader: fixed image decryption for any SoC flash
of the pages size which not fitted in 1024 B
Plus a few fixes
- serial recovery: fixed echo command
- serial recovery: fixed possible output buffer overflow
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
This updates hal_espressif so that a few changes and
features are available in main repository.
- Removed unused stubs
- Updated esptool version
- Fix macro redefinitions
- Changes to support Zephyr SDK toolchain
- pinctrl base files
- Fix BLE nested locking handling
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
NXP hal will define constants for pinmux options in RT pinctrl
implementation. Update hal revision to pull in dtsi file.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
In upstream the LV_COLOR_DEPTH_BITS option is called LV_COLOR_DEPTH, this
needs changing if we want to support v8.2.0.
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
NXP hal pinctrl header files are required for pin groups. Update HAL
revision to pull in pinctrl header files.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
This commit moves openthread CMakeLists.txt from openthread submodule
to zephyr/modules/openthread.
Signed-off-by: Przemyslaw Bida <przemyslaw.bida@nordicsemi.no>
Fixes: #40559
Moving CMakeLists.txt gluecode into Zephyr repo minimizes the patching
needed in LittleFS repo.
It provides a dedicate Zephyr LFS config header which will define the
equivalent LittleFS settings based upon Kconfig settings.
This further reduces the patching needed in LittleFS.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Pull latest canopennode module version. The last revision changes module
name from CANopenNode to canopennode.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
This updates the lvgl in-tree glue code to work with version v8.1.0 and
bumps the west manifest accordingly.
The following are the most significant changes:
- The logging callback has changes in lvgl and no longer provides the
caller with an integer log level code. We now need to parse the log
string's prefix to determine the level.
- Several Kconfig options (mostly for default values of various settings)
have been removed because these values are no longer configurable in
lvgl.
- The library no longer performs a deep copy of the display and input
device driver structs, so these must no longer be allocated on the
stack in the init func.
Other than that it's mostly about renaming of various structures and
functions and adjusting the calls if function's signatures have changed.
This patch allows all in-tree users to work correctly but it's likely
it doesn't support all new widgets and layouts added in lvgl v8. These
however can be added gradually once this is upstream.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@huawei.com>