Skip to content

Commit

Permalink
Support for Zephyr 4.0
Browse files Browse the repository at this point in the history
Signed-off-by: Simone Orru <[email protected]>
  • Loading branch information
sorru94 committed Nov 21, 2024
1 parent 3a0c0cc commit accea8e
Show file tree
Hide file tree
Showing 15 changed files with 47 additions and 85 deletions.
5 changes: 0 additions & 5 deletions e2e/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,8 @@

cmake_minimum_required(VERSION 3.20.0)

set(REQUIRED_BOARD "native_sim")
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

if(NOT BOARD STREQUAL REQUIRED_BOARD)
message(FATAL_ERROR "End to end tests cannot run on any other board besides ${REQUIRED_BOARD}.")
endif()

# add some custom functions from the sample directory
set(SAMPLE_DIR "${CMAKE_CURRENT_LIST_DIR}/../samples/astarte_app")
include(${SAMPLE_DIR}/Utils.cmake)
Expand Down
10 changes: 4 additions & 6 deletions e2e/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,10 @@ CONFIG_MBEDTLS_ENABLE_HEAP=y
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y # Does not include writing
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing (also needs MBEDTLS_PEM_WRITE_C)
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../samples/astarte_app/include/tls-conf.h"
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
5 changes: 2 additions & 3 deletions e2e/pytest/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,9 @@ def exec_commands(self, commands: list[str], timeout: float | None = None):


@pytest.fixture(scope="session")
def astarte_cfg():
def astarte_cfg(dut: DeviceAdapter):
# Load kconfig configured settings from the build directory
# FIXME this path depends on the testcase name but for now it is good enough
CONFIG_FILE = "./twister-out/native_sim/lib.astarte_device_sdk.e2e/zephyr/.config"
CONFIG_FILE = dut.device_config.build_dir.joinpath("zephyr", ".config")

return CfgValues(CONFIG_FILE)

Expand Down
10 changes: 4 additions & 6 deletions get_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,13 +114,11 @@ CONFIG_MBEDTLS_ENABLE_HEAP=y
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y # Does not include writing
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing (also needs MBEDTLS_PEM_WRITE_C)
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_X509_CSR_WRITE_C=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../samples/astarte_app/include/tls-conf.h"
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
26 changes: 0 additions & 26 deletions samples/astarte_app/include/tls-conf.h

This file was deleted.

10 changes: 4 additions & 6 deletions samples/astarte_app/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,10 @@ CONFIG_MBEDTLS_ENABLE_HEAP=y
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y # Does not include writing
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing (also needs MBEDTLS_PEM_WRITE_C)
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../samples/astarte_app/include/tls-conf.h"
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
10 changes: 5 additions & 5 deletions samples/astarte_app/src/eth.c
Original file line number Diff line number Diff line change
Expand Up @@ -327,11 +327,6 @@ int eth_connect(void)
return -1;
}

LOG_INF("Waiting for Ethernet interface to be operational."); // NOLINT
while (net_if_oper_state(iface) != NET_IF_OPER_UP) {
k_sleep(K_MSEC(200));
}

const struct device *dev = net_if_get_device(iface);
LOG_INF("Default network interface device name: %s.", dev->name); // NOLINT
struct ethernet_context *eth_ctx = net_if_l2_data(iface);
Expand All @@ -340,6 +335,11 @@ int eth_connect(void)
enum net_if_oper_state iface_oper_state = net_if_oper_state(iface);
LOG_INF("Default network interface operational state: %d.", iface_oper_state); // NOLINT

LOG_INF("Waiting for Ethernet interface to be operational."); // NOLINT
while (net_if_oper_state(iface) != NET_IF_OPER_UP) {
k_sleep(K_MSEC(200));
}

#ifdef CONFIG_NET_DHCPV4
net_dhcpv4_start(iface);

Expand Down
10 changes: 5 additions & 5 deletions tests/lib/astarte_device_sdk/integration/device_caching/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ CONFIG_ASTARTE_DEVICE_SDK_REALM_NAME="."
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
# 55kB is the max absolute value, could be set much lower
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../../../../astarte-device-sdk-zephyr/tests/lib/astarte_device_sdk/integration/include/native-sim-tls-conf.h"
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
10 changes: 5 additions & 5 deletions tests/lib/astarte_device_sdk/integration/introspection/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@ CONFIG_LOG=y
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
# 55kB is the max absolute value, could be set much lower
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../../../../astarte-device-sdk-zephyr/tests/lib/astarte_device_sdk/integration/include/native-sim-tls-conf.h"
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
10 changes: 5 additions & 5 deletions tests/lib/astarte_device_sdk/integration/kv_storage/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ CONFIG_ASTARTE_DEVICE_SDK_REALM_NAME="."
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
# 55kB is the max absolute value, could be set much lower
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../../../../astarte-device-sdk-zephyr/tests/lib/astarte_device_sdk/integration/include/native-sim-tls-conf.h"
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
10 changes: 5 additions & 5 deletions tests/lib/astarte_device_sdk/integration/uuid/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@ CONFIG_TEST_LOGGING_DEFAULTS=n
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
# 55kB is the max absolute value, could be set much lower
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../../../../astarte-device-sdk-zephyr/tests/lib/astarte_device_sdk/integration/include/native-sim-tls-conf.h"
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
10 changes: 5 additions & 5 deletions tests/lib/astarte_device_sdk/integration/zlib/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ CONFIG_LOG=y
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
# 55kB is the max absolute value, could be set much lower
CONFIG_MBEDTLS_HEAP_SIZE=55000
# 16384 is the max absolute value, could be set much lower
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
CONFIG_MBEDTLS_PK_WRITE_C=y
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
CONFIG_MBEDTLS_ZEPHYR_ENTROPY=y
CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y
CONFIG_MBEDTLS_USER_CONFIG_FILE="../../../../astarte-device-sdk-zephyr/tests/lib/astarte_device_sdk/integration/include/native-sim-tls-conf.h"
CONFIG_MBEDTLS_PK_WRITE_C=y # Required for PEM writing
CONFIG_MBEDTLS_ENTROPY_C=y
CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_CIPHER_ALL_ENABLED=y
Expand Down
2 changes: 1 addition & 1 deletion west-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ manifest:
projects:
- name: zephyr
remote: zephyrproject-rtos
revision: v3.7.0
revision: v4.0.0
import:
# By using name-allowlist we can clone only the modules that are
# strictly needed by the application.
Expand Down
2 changes: 1 addition & 1 deletion west-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ manifest:
projects:
- name: zephyr
remote: zephyrproject-rtos
revision: v3.7.0
revision: v4.0.0
import:
# By using name-allowlist we can clone only the modules that are
# strictly needed by the application.
Expand Down
2 changes: 1 addition & 1 deletion west.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ manifest:
projects:
- name: zephyr
remote: zephyrproject-rtos
revision: v3.7.0
revision: v4.0.0
import: true
- name: zlib-zephyr
remote: secomind
Expand Down

0 comments on commit accea8e

Please sign in to comment.