Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upmerge 16 05 2024 test #1736

Closed
wants to merge 1,990 commits into from

Conversation

SebastianBoe
Copy link
Contributor

No description provided.

jfischer-no and others added 30 commits May 17, 2024 14:05
Add "nordic,nrf-usbhs" vendor compatible and new required properties.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Enable USB device controller.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
nRF54H20DK board is first major user of new UDC DWC2 driver.
Add nRF54H20DK (Application CPU) to allowed platforms in USB device
samples.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
There is some instability problems with qemu_riscv32
zephyrproject-rtos/zephyr#72858
which cause this sample test to fail in CI at random.
Let's change the integration platform to a reliable one,
so this test focuses on the sample and does not produce
false test failures due to the platform.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This board includes three gpio-connected LEDs and push-buttons. Include
all missing defines in board's DTS and while at it, fix existing button
definition (missing pull-up enable) and align node names with other
boards (e.g. 'nucleo_wb55rg').

Provided changes were tested on real board with 'blinky' and 'button'
samples.

Additionally, duplicated LED nodes no longer required were removed from
overlay file for this board, in 'suspend_to_ram' sample.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
This adds DT aliases for LED and button used in recovery mode of the
MCUboot bootloader, on the 'nucleo_wba55cg' board.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
The nRF54H20 EXMIF peripheral requires word accesses. Doing accesses of
byte or half-word sizes results in bus fault.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
Loadable extensions need access to Zephyr (and Zephyr application)
includes and some CFLAGS to be properly built. This patch adds a new
target, `llext-edk`, which generates a tar file with those includes and
flags that can be loaded from cmake and make files.

A Zephyr application willing to expose some API to extensions it loads
only need to add the include directories describing such APIs to the
Zephyr ones via zephyr_include_directories() CMake call.

A new Kconfig option, CONFIG_LLEXT_EDK_NAME allows one to control some
aspects of the generated file, which enables some customization - think
of an application called ACME, willing to have a ACME_EXTENSION_KIT or
something.

All EDK Kconfig options are behind CONFIG_LLEXT_EDK, which doesn't
depend on LLEXT directly - so that EDK features can be leveraged by
downstream variations of loadable extensions.

Also, each arch may need different compiler flags for extensions: those
are handled by the `LLEXT_CFLAGS` cmake flag. An example is set for GCC
ARM.

Finally, EDK throughout this patch means Extension Development Kit,
which is a bad name, but at least doesn't conflict with SDK.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
A new Kconfig option which generates syscall stubs assuming that
extensions will always run on userspace, thus simplifying linking
them, as there's no need for z_impl_ stubs (used for direct syscalls),
CONFIG_LLEXT_EDK_USERSPACE_ONLY.

While defining __ZEPHYR_USER__ could have the same effect for optmised
builds, people building extensions on debug environments - thus
non-optimised - would suffer, as they'd need to somehow make the stubs
available (by either exporting the symbol or implementing dummy stubs).

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Besides the LLEXT_CFLAGS, which have all that is needed to compile,
generate more granular ones, LLEXT_INCLUDE_CFLAGS,
LLEXT_ALL_INCLUDE_CFLAGS, LLEXT_GENERATED_INCLUDE_CFLAGS and
LLEXT_BASE_CFLAGS. These are done for convenience, as they can help on
different setups, such as unit testing.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
This way they can be reused by the LLEXT EDK.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Some flags are common between in tree extensions and out of tree
supported by the EDK. Instead of duplicating those flags, the EDK reuses
the llext ones.

However, as the EDK has its own needs, two new lists,
`LLEXT_EDK_APPEND_FLAGS` and `LLEXT_EDK_REMOVE_FLAGS` are defined to
allow EDK to append or remove flags as needed.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Instead of hardcoding `autoconf.h` imacro, get the list of imacros from
the llext flags. As those come in the form of absolute paths, they also
need to be massaged to point from the EDK directory without revealing
host complete paths.

Also, the EDK now keeps the imacros on a different flag,
`LLEXT_GENERATED_IMACROS_CFLAGS`, to keep it similar to other generated
includes.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
This test uses pytest to generate an EDK from a simple Zephyr
application, and uses this EDK to build a simple extension, to ensure
that EDK generation is sane.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Shows a simple application which loads extensions and some simple
extensions. While everything is inside Zephyr tree, everything can
actually be build from different directories (even machines), as long as
the EDK is generated from the application and used by the extensions.
More information is available at sample's README.

This sample is build only for twister, as it requires a few steps to be
properly run, namely build the EDK, install it somewhere, build the
extensions using the EDK and finally build the application with the
extensions.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
After recent HWv2 model changes there is defconfig file
broken, so we got incorrect platform configuration. Fix that.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
Microchip external HAL repository has been updated with
the MEC5 HAL for new chips. MEC5 is a full HAL with chip
headers, C peripheral code, and PINCTRL DTSI files. MEC5
is meant for MEC174x, MEC175x, and also include support
for the older MEC172x named as MECH172x. NOTE: legacy
MEC172x in the currest zephyr tree is not affected.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
Add function to get string descriptor index and function
to remove linked descriptor from a device. This abstracts
it a bit so that the user does not need to know how it is
handled internally.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
This is slower but should have no real effect. In the future we can
support more than ASCII7 format and store it in other memory areas.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Move and rework string descriptor data to a separate structure so we can
share memory with another type. Also add description to the
USBD_DESC_STRING_DEFINE macro.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Do not use application-provided placeholder buffers. Generate
SerialNumber just before ASCII string is converted to UTF16LE. Make
dependency on HWINFO optional, but enabled by default.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
It simplifies the macros to create the string descriptors. We also no
longer need placeholders for the SerialNumber descriptor when it is
generated from hwid. In the future, we can store other descriptor types
in the same list.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
We could reuse the BOS header, but there are parts that are only needed
in the legacy device support or used internally and the tests. Move this
parts to the appropriate places.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Use the same scheme as for string descriptors. Descriptors can be added
or removed using the existend interface.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Add a sample USB 2.0 Extension Descriptor.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Board does not specify "zephyr,code" and is fails in twister.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Improve navigability in the documentation by adding a link to the main
HTTP Server documentation page to the HTTP Server sample.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
- added missing parenthesis around macro argument expansion

Signed-off-by: frei tycho <tfrei@baumer.com>
fix dtsi include path for board nrf9160dk_nrf52840

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
fix dtsi overlay include path for nrf9160dk_nrf52840

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
PR #72592 made pylint to use json2 output format. However, this
format is introduced in pylint v3. This commit adds an appropriate
setting in the requirements file.

Upstream PR: zephyrproject-rtos/zephyr#73152

Signed-off-by: Maciej Perkowski <Maciej.Perkowski@nordicsemi.no>
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Use wdt31 instead of wdt30 as wdt30 is hardware fixed to secure.

fromlist:
zephyrproject-rtos/zephyr#73163

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
…e domain

Don't define wdt30 for the non-secure domain as it is hardware fixed
to secure.

fromlist:
zephyrproject-rtos/zephyr#73163

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
… domain

Don't define UICR for the non-secure domain as it is hardware fixed to
secure.

fromlist:
zephyrproject-rtos/zephyr#73163

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
…r ns

Define peripherals with the 0x4000_0000 address range when building
for non-secure.

fromlist:
zephyrproject-rtos/zephyr#73163

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Refactor the 54L board file to be able to better support out-of-tree
non-secure boards.

This aligns better with nrf53's DT.

fromlist:
zephyrproject-rtos/zephyr#73163

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Complete rewrite of the 54l_ns DT board definition.

Now the secure board and non-secure board re-use a lot more code,
giving us a more maintainable solution.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.