From 50189e30d276afb84954c9b997e6dcd84153c63b Mon Sep 17 00:00:00 2001 From: Ahmed Ismail Date: Mon, 17 Mar 2025 15:13:54 +0000 Subject: [PATCH 1/5] freertos-kernel: Bump to v11.2.0 release extern "C" is added to FreeRTOSConfig.h header as previously in FreeRTOS-Kernel v11.1.0, the extern "C" was added in the FreeRTOS.h header before including FreeRTOSConfig.h header thus, the configuration file implicitly had the extern "C". However, the extern "C" in FreeRTOS.h has been moved to be after the headers inclusion. Hence, explicitly adding extern "C" that is needed by CPP files to FreeRTOSConfig.h Signed-off-by: Ahmed Ismail --- .../configs/freertos_config/FreeRTOSConfig.h | 14 +++++++++++++- .../configs/freertos_config/FreeRTOSConfig.h | 14 +++++++++++++- .../configs/freertos_config/FreeRTOSConfig.h | 14 +++++++++++++- components/freertos_kernel/library | 2 +- manifest.yml | 2 +- release_changes/202503171512.change.md | 1 + 6 files changed, 42 insertions(+), 5 deletions(-) create mode 100644 release_changes/202503171512.change.md diff --git a/applications/keyword_detection/configs/freertos_config/FreeRTOSConfig.h b/applications/keyword_detection/configs/freertos_config/FreeRTOSConfig.h index fc63feb0..e020c8c5 100644 --- a/applications/keyword_detection/configs/freertos_config/FreeRTOSConfig.h +++ b/applications/keyword_detection/configs/freertos_config/FreeRTOSConfig.h @@ -1,7 +1,7 @@ /* * FreeRTOS Kernel V10.4.1 * Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. - * Copyright (c) 2022, Arm Limited and Contributors. All rights reserved. + * Copyright (c) 2022-2025, Arm Limited and Contributors. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy of * this software and associated documentation files (the "Software"), to deal in @@ -35,6 +35,12 @@ #include "app_config.h" +/* *INDENT-OFF* */ +#ifdef __cplusplus + extern "C" { +#endif +/* *INDENT-ON* */ + #ifndef __USED #define __USED __attribute__( ( used ) ) #endif @@ -234,4 +240,10 @@ void vLoggingPrintf( const char * pcFormat, #define democonfigNETWORK_TYPES ( AWSIOT_NETWORK_TYPE_ETH ) +/* *INDENT-OFF* */ +#ifdef __cplusplus + } +#endif +/* *INDENT-ON* */ + #endif /* FREERTOS_CONFIG_H */ diff --git a/applications/object_detection/configs/freertos_config/FreeRTOSConfig.h b/applications/object_detection/configs/freertos_config/FreeRTOSConfig.h index 847bf7fb..e020c8c5 100644 --- a/applications/object_detection/configs/freertos_config/FreeRTOSConfig.h +++ b/applications/object_detection/configs/freertos_config/FreeRTOSConfig.h @@ -1,7 +1,7 @@ /* * FreeRTOS Kernel V10.4.1 * Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. - * Copyright (c) 2022-2024, Arm Limited and Contributors. All rights reserved. + * Copyright (c) 2022-2025, Arm Limited and Contributors. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy of * this software and associated documentation files (the "Software"), to deal in @@ -35,6 +35,12 @@ #include "app_config.h" +/* *INDENT-OFF* */ +#ifdef __cplusplus + extern "C" { +#endif +/* *INDENT-ON* */ + #ifndef __USED #define __USED __attribute__( ( used ) ) #endif @@ -234,4 +240,10 @@ void vLoggingPrintf( const char * pcFormat, #define democonfigNETWORK_TYPES ( AWSIOT_NETWORK_TYPE_ETH ) +/* *INDENT-OFF* */ +#ifdef __cplusplus + } +#endif +/* *INDENT-ON* */ + #endif /* FREERTOS_CONFIG_H */ diff --git a/applications/speech_recognition/configs/freertos_config/FreeRTOSConfig.h b/applications/speech_recognition/configs/freertos_config/FreeRTOSConfig.h index 821dc728..706c5944 100644 --- a/applications/speech_recognition/configs/freertos_config/FreeRTOSConfig.h +++ b/applications/speech_recognition/configs/freertos_config/FreeRTOSConfig.h @@ -1,7 +1,7 @@ /* * FreeRTOS Kernel V10.4.1 * Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. - * Copyright (c) 2022, Arm Limited and Contributors. All rights reserved. + * Copyright (c) 2022-2025, Arm Limited and Contributors. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy of * this software and associated documentation files (the "Software"), to deal in @@ -35,6 +35,12 @@ #include "app_config.h" +/* *INDENT-OFF* */ +#ifdef __cplusplus + extern "C" { +#endif +/* *INDENT-ON* */ + #ifndef __USED #define __USED __attribute__( ( used ) ) #endif @@ -231,4 +237,10 @@ void vLoggingPrintf( const char * pcFormat, #define democonfigNETWORK_TYPES ( AWSIOT_NETWORK_TYPE_ETH ) +/* *INDENT-OFF* */ +#ifdef __cplusplus + } +#endif +/* *INDENT-ON* */ + #endif /* FREERTOS_CONFIG_H */ diff --git a/components/freertos_kernel/library b/components/freertos_kernel/library index dbf70559..0adc196d 160000 --- a/components/freertos_kernel/library +++ b/components/freertos_kernel/library @@ -1 +1 @@ -Subproject commit dbf70559b27d39c1fdb68dfb9a32140b6a6777a0 +Subproject commit 0adc196d4bd52a2d91102b525b0aafc1e14a2386 diff --git a/manifest.yml b/manifest.yml index 97d158e7..e4c17c72 100644 --- a/manifest.yml +++ b/manifest.yml @@ -7,7 +7,7 @@ dependencies: license: "MIT" tpip-category: "category-2" security-risk: "low" - version: "V11.1.0" + version: "V11.2.0" repository: type: "git" url: "https://github.com/FreeRTOS/FreeRTOS-Kernel.git" diff --git a/release_changes/202503171512.change.md b/release_changes/202503171512.change.md new file mode 100644 index 00000000..31932edb --- /dev/null +++ b/release_changes/202503171512.change.md @@ -0,0 +1 @@ +freertos-kernel: Bump to v11.2.0 release. From 690b8f912ace41b7de52be7e4a1ac1b5d4c03f83 Mon Sep 17 00:00:00 2001 From: Ahmed Ismail Date: Tue, 25 Mar 2025 10:51:16 +0000 Subject: [PATCH 2/5] mbedtls: Bump to v3.6.3 release Signed-off-by: Ahmed Ismail --- components/security/mbedtls/library | 2 +- manifest.yml | 2 +- release_changes/202503171512.change.md | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/components/security/mbedtls/library b/components/security/mbedtls/library index 71c569d4..22098d41 160000 --- a/components/security/mbedtls/library +++ b/components/security/mbedtls/library @@ -1 +1 @@ -Subproject commit 71c569d44bf3a8bd53d874c81ee8ac644dd6e9e3 +Subproject commit 22098d41c6620ce07cf8a0134d37302355e1e5ef diff --git a/manifest.yml b/manifest.yml index e4c17c72..bdf2c4ed 100644 --- a/manifest.yml +++ b/manifest.yml @@ -34,7 +34,7 @@ dependencies: license: "Apache-2.0" tpip-category: "category-2" security-risk: "high" - version: "v3.6.1" + version: "v3.6.3" repository: type: "git" url: "https://github.com/Mbed-TLS/mbedtls.git" diff --git a/release_changes/202503171512.change.md b/release_changes/202503171512.change.md index 31932edb..ea88a116 100644 --- a/release_changes/202503171512.change.md +++ b/release_changes/202503171512.change.md @@ -1 +1,2 @@ freertos-kernel: Bump to v11.2.0 release. +mbedtls: Bump to v3.6.3 release. From 40390fc4dd0621e0b661c40ac3718d717412f329 Mon Sep 17 00:00:00 2001 From: Ahmed Ismail Date: Wed, 2 Apr 2025 13:32:03 +0100 Subject: [PATCH 3/5] tf-m: Bump to v2.2.0 release This commit includes the following changes: - Install the needed python packages by TF-M v2.2.0 in the Docker image used by the development environment and in GitHub workflow. - Remove the ARMClang toolchain MVE patch as it's part of TF-M v2.2.0 release. - Add MPS4 dummy ROTPK provisioning patch because of the defect mentioned in the patch file description field. Signed-off-by: Ahmed Ismail --- .devcontainer/Dockerfile | 8 +- .github/workflows/build.yaml | 8 +- .../blinky/tests/corstone300_pass_output.log | 2 +- .../blinky/tests/corstone310_pass_output.log | 2 +- .../blinky/tests/corstone315_pass_output.log | 2 +- .../blinky/tests/corstone320_pass_output.log | 2 +- .../tests/corstone300_model_pass_output.log | 6 +- .../tests/corstone300_pass_output.log | 6 +- .../tests/corstone310_model_pass_output.log | 6 +- .../tests/corstone310_pass_output.log | 6 +- .../tests/corstone315_model_pass_output.log | 6 +- .../tests/corstone315_pass_output.log | 6 +- .../tests/corstone320_model_pass_output.log | 6 +- .../tests/corstone320_pass_output.log | 6 +- .../tests/corstone300_pass_output.log | 6 +- .../tests/corstone310_pass_output.log | 6 +- .../tests/corstone315_pass_output.log | 6 +- .../tests/corstone320_pass_output.log | 6 +- .../tests/corstone300_pass_output.log | 6 +- .../tests/corstone310_pass_output.log | 6 +- .../tests/corstone315_pass_output.log | 6 +- .../tests/corstone320_pass_output.log | 6 +- cmake/TfmInitialCacheCommon.cmake | 4 +- .../0004-build-Enable-armclang-MVE.patch | 304 ------------------ .../0004-mps4-Provision-dummy-ROTPK-key.patch | 40 +++ .../security/trusted_firmware-m/library | 2 +- manifest.yml | 2 +- release_changes/202503171512.change.md | 1 + 28 files changed, 111 insertions(+), 362 deletions(-) delete mode 100644 components/security/trusted_firmware-m/integration/patches/0004-build-Enable-armclang-MVE.patch create mode 100644 components/security/trusted_firmware-m/integration/patches/0004-mps4-Provision-dummy-ROTPK-key.patch diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index ac915ba0..caf4e012 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -# Copyright 2024 Arm Limited and/or its affiliates +# Copyright 2024-2025 Arm Limited and/or its affiliates # # SPDX-License-Identifier: MIT @@ -26,6 +26,7 @@ RUN apt-get update && \ gdb \ lcov \ libbz2-dev \ + libclang-14-dev \ libffi-dev \ libgdbm-dev \ libgdbm-compat-dev \ @@ -74,6 +75,7 @@ RUN pip3 install \ cbor \ cbor2 \ cffi \ + clang==14.0 \ cmake \ imgtool \ intelhex \ @@ -83,10 +85,14 @@ RUN pip3 install \ pyelftools \ pyhsslms \ PyYaml \ + rich \ setuptools \ towncrier \ wheel +# This is needed to define where the libclang shared object is located +ENV LD_LIBRARY_PATH="/usr/lib/llvm-14/lib:${LD_LIBRARY_PATH}" + # Create the user RUN groupadd --gid $USER_GID $USERNAME \ && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \ diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index b0886f47..095f7e25 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -44,9 +44,9 @@ jobs: - name: Install build dependencies shell: bash run: | - pip install cmake ninja imgtool cffi intelhex cbor2 cbor jinja2 PyYaml pyelftools pyhsslms + pip install cmake ninja imgtool cffi intelhex cbor2 cbor jinja2 PyYaml pyelftools pyhsslms clang==14.0 rich sudo apt-get -y update - sudo apt-get -y install srecord libsndfile1-dev + sudo apt-get -y install srecord libsndfile1-dev libclang-14-dev - name: Install GNU Arm toolchain shell: bash run: | @@ -67,6 +67,10 @@ jobs: git config --global user.email "ci@example.com" git config --global user.name "ci" git config --global core.autocrlf input + - name: Set up LD_LIBRARY_PATH + shell: bash + run: | + echo "LD_LIBRARY_PATH=/usr/lib/llvm-14/lib:\$LD_LIBRARY_PATH" >> $GITHUB_ENV - name: Build ${{ matrix.application }} application shell: bash run: | diff --git a/applications/blinky/tests/corstone300_pass_output.log b/applications/blinky/tests/corstone300_pass_output.log index 25e2b268..f2e98cf7 100644 --- a/applications/blinky/tests/corstone300_pass_output.log +++ b/applications/blinky/tests/corstone300_pass_output.log @@ -1,6 +1,6 @@ Waiting for provisioning bundle Running provisioning bundle -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 psa_framework_version is: 257 LED on LED off diff --git a/applications/blinky/tests/corstone310_pass_output.log b/applications/blinky/tests/corstone310_pass_output.log index 25e2b268..f2e98cf7 100644 --- a/applications/blinky/tests/corstone310_pass_output.log +++ b/applications/blinky/tests/corstone310_pass_output.log @@ -1,6 +1,6 @@ Waiting for provisioning bundle Running provisioning bundle -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 psa_framework_version is: 257 LED on LED off diff --git a/applications/blinky/tests/corstone315_pass_output.log b/applications/blinky/tests/corstone315_pass_output.log index 2ba7bcb0..b6d2211e 100644 --- a/applications/blinky/tests/corstone315_pass_output.log +++ b/applications/blinky/tests/corstone315_pass_output.log @@ -1,6 +1,6 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 psa_framework_version is: 257 LED on LED off diff --git a/applications/blinky/tests/corstone320_pass_output.log b/applications/blinky/tests/corstone320_pass_output.log index 2ba7bcb0..b6d2211e 100644 --- a/applications/blinky/tests/corstone320_pass_output.log +++ b/applications/blinky/tests/corstone320_pass_output.log @@ -1,6 +1,6 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 psa_framework_version is: 257 LED on LED off diff --git a/applications/keyword_detection/tests/corstone300_model_pass_output.log b/applications/keyword_detection/tests/corstone300_model_pass_output.log index da1aa56c..8c07c2b7 100644 --- a/applications/keyword_detection/tests/corstone300_model_pass_output.log +++ b/applications/keyword_detection/tests/corstone300_model_pass_output.log @@ -1,12 +1,12 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.11 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.42 ML interface initialised diff --git a/applications/keyword_detection/tests/corstone300_pass_output.log b/applications/keyword_detection/tests/corstone300_pass_output.log index dee3d71f..69b63b82 100644 --- a/applications/keyword_detection/tests/corstone300_pass_output.log +++ b/applications/keyword_detection/tests/corstone300_pass_output.log @@ -1,11 +1,11 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 ML interface initialised ML_HEARD_ON diff --git a/applications/keyword_detection/tests/corstone310_model_pass_output.log b/applications/keyword_detection/tests/corstone310_model_pass_output.log index da1aa56c..8c07c2b7 100644 --- a/applications/keyword_detection/tests/corstone310_model_pass_output.log +++ b/applications/keyword_detection/tests/corstone310_model_pass_output.log @@ -1,12 +1,12 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.11 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.42 ML interface initialised diff --git a/applications/keyword_detection/tests/corstone310_pass_output.log b/applications/keyword_detection/tests/corstone310_pass_output.log index dee3d71f..69b63b82 100644 --- a/applications/keyword_detection/tests/corstone310_pass_output.log +++ b/applications/keyword_detection/tests/corstone310_pass_output.log @@ -1,11 +1,11 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 ML interface initialised ML_HEARD_ON diff --git a/applications/keyword_detection/tests/corstone315_model_pass_output.log b/applications/keyword_detection/tests/corstone315_model_pass_output.log index 7cbd4692..86777308 100644 --- a/applications/keyword_detection/tests/corstone315_model_pass_output.log +++ b/applications/keyword_detection/tests/corstone315_model_pass_output.log @@ -1,12 +1,12 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.11 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.42 ML interface initialised diff --git a/applications/keyword_detection/tests/corstone315_pass_output.log b/applications/keyword_detection/tests/corstone315_pass_output.log index 780e5932..e9945b5a 100644 --- a/applications/keyword_detection/tests/corstone315_pass_output.log +++ b/applications/keyword_detection/tests/corstone315_pass_output.log @@ -1,11 +1,11 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 ML interface initialised ML_HEARD_ON diff --git a/applications/keyword_detection/tests/corstone320_model_pass_output.log b/applications/keyword_detection/tests/corstone320_model_pass_output.log index 7cbd4692..86777308 100644 --- a/applications/keyword_detection/tests/corstone320_model_pass_output.log +++ b/applications/keyword_detection/tests/corstone320_model_pass_output.log @@ -1,12 +1,12 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.11 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 ML Model Component (ID 2) version=0.0.42 ML interface initialised diff --git a/applications/keyword_detection/tests/corstone320_pass_output.log b/applications/keyword_detection/tests/corstone320_pass_output.log index 780e5932..e9945b5a 100644 --- a/applications/keyword_detection/tests/corstone320_pass_output.log +++ b/applications/keyword_detection/tests/corstone320_pass_output.log @@ -1,11 +1,11 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 ML interface initialised ML_HEARD_ON diff --git a/applications/object_detection/tests/corstone300_pass_output.log b/applications/object_detection/tests/corstone300_pass_output.log index d55646d2..923030b5 100644 --- a/applications/object_detection/tests/corstone300_pass_output.log +++ b/applications/object_detection/tests/corstone300_pass_output.log @@ -1,11 +1,11 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Complete recognition: Detected faces: 2 Complete recognition: Detected faces: 2 diff --git a/applications/object_detection/tests/corstone310_pass_output.log b/applications/object_detection/tests/corstone310_pass_output.log index d55646d2..923030b5 100644 --- a/applications/object_detection/tests/corstone310_pass_output.log +++ b/applications/object_detection/tests/corstone310_pass_output.log @@ -1,11 +1,11 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Complete recognition: Detected faces: 2 Complete recognition: Detected faces: 2 diff --git a/applications/object_detection/tests/corstone315_pass_output.log b/applications/object_detection/tests/corstone315_pass_output.log index 8b6d709d..d53cb123 100644 --- a/applications/object_detection/tests/corstone315_pass_output.log +++ b/applications/object_detection/tests/corstone315_pass_output.log @@ -1,11 +1,11 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Complete recognition: Detected faces: 2 Complete recognition: Detected faces: 2 diff --git a/applications/object_detection/tests/corstone320_pass_output.log b/applications/object_detection/tests/corstone320_pass_output.log index 8b6d709d..d53cb123 100644 --- a/applications/object_detection/tests/corstone320_pass_output.log +++ b/applications/object_detection/tests/corstone320_pass_output.log @@ -1,11 +1,11 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Complete recognition: Detected faces: 2 Complete recognition: Detected faces: 2 diff --git a/applications/speech_recognition/tests/corstone300_pass_output.log b/applications/speech_recognition/tests/corstone300_pass_output.log index 7d9c447d..05f293c3 100644 --- a/applications/speech_recognition/tests/corstone300_pass_output.log +++ b/applications/speech_recognition/tests/corstone300_pass_output.log @@ -1,11 +1,11 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Init speex ML interface initialised diff --git a/applications/speech_recognition/tests/corstone310_pass_output.log b/applications/speech_recognition/tests/corstone310_pass_output.log index 7d9c447d..05f293c3 100644 --- a/applications/speech_recognition/tests/corstone310_pass_output.log +++ b/applications/speech_recognition/tests/corstone310_pass_output.log @@ -1,11 +1,11 @@ Waiting for provisioning bundle Running provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Init speex ML interface initialised diff --git a/applications/speech_recognition/tests/corstone315_pass_output.log b/applications/speech_recognition/tests/corstone315_pass_output.log index 9e830fed..b7db7e00 100644 --- a/applications/speech_recognition/tests/corstone315_pass_output.log +++ b/applications/speech_recognition/tests/corstone315_pass_output.log @@ -1,11 +1,11 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Init speex ML interface initialised diff --git a/applications/speech_recognition/tests/corstone320_pass_output.log b/applications/speech_recognition/tests/corstone320_pass_output.log index 9e830fed..b7db7e00 100644 --- a/applications/speech_recognition/tests/corstone320_pass_output.log +++ b/applications/speech_recognition/tests/corstone320_pass_output.log @@ -1,11 +1,11 @@ Waiting for DM provisioning bundle Running DM provisioning bundle -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.10 Starting bootloader -Booting TF-M v2.1.1 +Booting TF-M v2.2.0 PSA Framework version is: 257 -Secure Component (ID 0) version=2.1.1 +Secure Component (ID 0) version=2.2.0 Non-Secure Component (ID 1) version=0.0.20 Init speex ML interface initialised diff --git a/cmake/TfmInitialCacheCommon.cmake b/cmake/TfmInitialCacheCommon.cmake index 63ea8182..2dd98f9d 100644 --- a/cmake/TfmInitialCacheCommon.cmake +++ b/cmake/TfmInitialCacheCommon.cmake @@ -8,7 +8,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/../tools/cmake/ApplyPatches.cmake) set(PATCH_FILES_DIRECTORY "${CMAKE_SOURCE_DIR}/../integration/patches") set(PATCH_FILES - "${PATCH_FILES_DIRECTORY}/0004-build-Enable-armclang-MVE.patch" + "${PATCH_FILES_DIRECTORY}/0004-mps4-Provision-dummy-ROTPK-key.patch" ) # These patches are only applied in case of building keyword_detection application with GNU toolchain # as it is currently the only application that utilises the ML Model component OTA update feature @@ -103,6 +103,8 @@ set(TFM_PARTITION_INTERNAL_TRUSTED_STORAGE ON CACHE BOOL "TFM_PARTITION_INTERNAL set(TFM_PARTITION_PLATFORM ON CACHE BOOL "TFM_PARTITION_PROTECTED_STORAGE" FORCE) set(TFM_PARTITION_PROTECTED_STORAGE ON CACHE BOOL "TFM_PARTITION_PROTECTED_STORAGE" FORCE) set(TFM_SPM_LOG_LEVEL TFM_SPM_LOG_LEVEL_INFO CACHE STRING "TFM_SPM_LOG_LEVEL" FORCE) +set(TFM_BL1_2_CM_SIGNING_ALG LMS CACHE STRING "TFM_BL1_2_CM_SIGNING_ALG" FORCE) +set(TFM_BL1_2_DM_SIGNING_ALG LMS CACHE STRING "TFM_BL1_2_DM_SIGNING_ALG" FORCE) # TF-M can be built with a different toolchain, but the toolchain that # builds the IoT SDK is guaranteed to be available in the environment. diff --git a/components/security/trusted_firmware-m/integration/patches/0004-build-Enable-armclang-MVE.patch b/components/security/trusted_firmware-m/integration/patches/0004-build-Enable-armclang-MVE.patch deleted file mode 100644 index a14dbc15..00000000 --- a/components/security/trusted_firmware-m/integration/patches/0004-build-Enable-armclang-MVE.patch +++ /dev/null @@ -1,304 +0,0 @@ -From 2e4aa5a7a63fa063f9486512296d74787cf08608 Mon Sep 17 00:00:00 2001 -From: Gergely Kovacs -Date: Thu, 5 Dec 2024 13:51:23 +0000 -Subject: [PATCH 4/4] build: Enable armclang MVE - -The vulnerability preventing the use of MVE was already fixed when FPU -was enabled. For m55 and m85 the compiler specifies the allowed -mcpu -feature combinations. These are different when -march is used. Also -armlink accepts only a few options when architecture is given. - -Signed-off-by: Gergely Kovacs -Change-Id: I1351a7b4e9d383894204a0ddbc8b5317ab3dbafe ---- - config/cp_check.cmake | 2 +- - platform/ns/toolchain_ns_ARMCLANG.cmake | 90 ++++++++++++++++++------- - toolchain_ARMCLANG.cmake | 87 +++++++++++++++++------- - 3 files changed, 128 insertions(+), 51 deletions(-) - -diff --git a/config/cp_check.cmake b/config/cp_check.cmake -index b6a1963a1..7463b174a 100644 ---- a/config/cp_check.cmake -+++ b/config/cp_check.cmake -@@ -25,7 +25,7 @@ endif() - - ########################## FPU and MVE ######################################### - --tfm_invalid_config(NOT CMAKE_C_COMPILER_ID STREQUAL "GNU" AND (CONFIG_TFM_ENABLE_MVE OR CONFIG_TFM_ENABLE_MVE_FP)) -+tfm_invalid_config(CMAKE_C_COMPILER_ID STREQUAL "IAR" AND (CONFIG_TFM_ENABLE_MVE OR CONFIG_TFM_ENABLE_MVE_FP)) - tfm_invalid_config((NOT CONFIG_TFM_FP_ARCH) AND (CONFIG_TFM_ENABLE_FP OR CONFIG_TFM_ENABLE_MVE_FP)) - tfm_invalid_config((CMAKE_C_COMPILER_ID STREQUAL "ARMClang") AND (NOT CONFIG_TFM_FP_ARCH_ASM) AND CONFIG_TFM_ENABLE_FP) - tfm_invalid_config((NOT CONFIG_TFM_ENABLE_FP AND NOT CONFIG_TFM_ENABLE_MVE AND NOT CONFIG_TFM_ENABLE_MVE_FP) AND CONFIG_TFM_LAZY_STACKING) -diff --git a/platform/ns/toolchain_ns_ARMCLANG.cmake b/platform/ns/toolchain_ns_ARMCLANG.cmake -index 77956e062..31e9d05cc 100644 ---- a/platform/ns/toolchain_ns_ARMCLANG.cmake -+++ b/platform/ns/toolchain_ns_ARMCLANG.cmake -@@ -43,8 +43,15 @@ if (DEFINED TFM_SYSTEM_PROCESSOR) - set(CMAKE_SYSTEM_PROCESSOR ${TFM_SYSTEM_PROCESSOR}) - - if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main") -- message(WARNING "MVE is not yet supported using ARMCLANG") -- string(APPEND CMAKE_SYSTEM_PROCESSOR "+nomve") -+ if(NOT CONFIG_TFM_ENABLE_MVE) -+ string(APPEND CMAKE_SYSTEM_PROCESSOR "+nomve") -+ endif() -+ if((NOT TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m85") -+ AND (NOT CONFIG_TFM_ENABLE_MVE_FP) -+ AND CONFIG_TFM_ENABLE_MVE -+ AND CONFIG_TFM_ENABLE_FP) -+ string(APPEND CMAKE_SYSTEM_PROCESSOR "+nomve.fp") -+ endif() - endif() - - if (DEFINED TFM_SYSTEM_DSP) -@@ -57,7 +64,7 @@ if (DEFINED TFM_SYSTEM_PROCESSOR) - # 'cortex-m4', 'cortex-m7', 'cortex-m33', 'cortex-m35p', 'cortex-m55' and 'cortex-m85'. - # Build fails if other M-profile cpu, such as 'cortex-m23', is added with '+nofp'. - # Explicitly list those cpu to align with ARMCLANG description. -- if (NOT CONFIG_TFM_FLOAT_ABI STREQUAL "hard" AND -+ if (NOT CONFIG_TFM_ENABLE_FP AND - (TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m4" - OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m7" - OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m33" -@@ -80,17 +87,30 @@ set(CMAKE_C_COMPILER_TARGET arm-${CROSS_COMPILE}) - set(CMAKE_CXX_COMPILER_TARGET arm-${CROSS_COMPILE}) - set(CMAKE_ASM_COMPILER_TARGET arm-${CROSS_COMPILE}) - --# MVE is currently not supported in case of armclang - if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main") -- string(APPEND CMAKE_SYSTEM_ARCH "+nomve") --endif() -+ if(CONFIG_TFM_ENABLE_MVE_FP) -+ string(APPEND CMAKE_SYSTEM_ARCH "+mve.fp") -+ elseif(CONFIG_TFM_ENABLE_MVE) -+ string(APPEND CMAKE_SYSTEM_ARCH "+mve") -+ elseif(TFM_SYSTEM_DSP) -+ string(APPEND CMAKE_SYSTEM_ARCH "+dsp") -+ endif() - --if (DEFINED TFM_SYSTEM_DSP) -- if(NOT TFM_SYSTEM_DSP) -- string(APPEND CMAKE_SYSTEM_ARCH "+nodsp") -+ # Generic fp extension names to be used instead of -mfpu -+ # +fp/fpv5-sp-d16 is not handled as it is the default -+ if(CONFIG_TFM_ENABLE_FP) -+ if (CONFIG_TFM_FP_ARCH STREQUAL "fpv5-d16") -+ string(APPEND CMAKE_SYSTEM_ARCH "+fp.dp") -+ endif() -+ else() -+ string(APPEND CMAKE_SYSTEM_ARCH "+nofp") - endif() - endif() - -+if(TFM_SYSTEM_DSP AND (NOT TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main")) -+ string(APPEND CMAKE_SYSTEM_ARCH "+dsp") -+endif() -+ - # Cmake's ARMClang support has several issues with compiler validation. To - # avoid these, we set the list of supported -mcpu and -march variables to - # the ones we intend to use so that the validation will never fail. -@@ -114,28 +134,42 @@ if (ARMCLANG_VERSION VERSION_GREATER_EQUAL 6.15 AND - " Please use other Armclang versions instead.") - endif() - -+ - if (CMAKE_SYSTEM_PROCESSOR) - set(CMAKE_C_FLAGS "-mcpu=${CMAKE_SYSTEM_PROCESSOR}") - set(CMAKE_CXX_FLAGS "-mcpu=${CMAKE_SYSTEM_PROCESSOR}") - set(CMAKE_ASM_FLAGS "--target=${CMAKE_ASM_COMPILER_TARGET} -mcpu=${CMAKE_SYSTEM_PROCESSOR}") -- set(CMAKE_C_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -- set(CMAKE_CXX_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -- set(CMAKE_ASM_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -+ -+ set(ARMLINK_MAPPED_OPTION "--cpu=${CMAKE_SYSTEM_PROCESSOR}") - # But armlink doesn't support this +dsp syntax -- string(REGEX REPLACE "\\+nodsp" "" CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nodsp" "" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nodsp" "" CMAKE_ASM_LINK_FLAGS "${CMAKE_ASM_LINK_FLAGS}") -- # And uses different syntax for +nofp -- string(REGEX REPLACE "\\+nofp" ".no_fp" CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nofp" ".no_fp" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nofp" ".no_fp" CMAKE_ASM_LINK_FLAGS "${CMAKE_ASM_LINK_FLAGS}") -- -- string(REGEX REPLACE "\\+nomve" ".no_mve" CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nomve" ".no_mve" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nomve" ".no_mve" CMAKE_ASM_LINK_FLAGS "${CMAKE_ASM_LINK_FLAGS}") -+ string(REGEX REPLACE "\\+nodsp" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ # And uses different syntax for +nofp, +nomve.fp, nomve -+ string(REGEX REPLACE "\\+nofp" ".no_fp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+nomve\\.fp" ".no_mvefp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+nomve" ".no_mve" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ -+ set(CMAKE_C_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_CXX_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_ASM_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) - else() - set(CMAKE_C_FLAGS "-march=${CMAKE_SYSTEM_ARCH}") - set(CMAKE_CXX_FLAGS "-march=${CMAKE_SYSTEM_ARCH}") -+ set(CMAKE_ASM_FLAGS "--target=${CMAKE_ASM_COMPILER_TARGET} -march=${CMAKE_SYSTEM_ARCH}") -+ -+ set(ARMLINK_MAPPED_OPTION "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -+ # Mapping the architecture name -+ string(REGEX REPLACE "armv" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ # Armlink uses --fpu option instead of the generic extension names -+ string(REGEX REPLACE "\\+fp\\.dp" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+nofp" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ # And different syntax for these features -+ string(REGEX REPLACE "\\+mve\\.fp" ".mve.fp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+mve" ".mve" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+dsp" ".dsp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ -+ set(CMAKE_C_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_CXX_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_ASM_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) - endif() - - # This flag is used to check if toolchain has fixed VLLDM vulnerability -@@ -145,8 +179,14 @@ set(CP_CHECK_C_FLAGS ${CMAKE_C_FLAGS}) - if (CONFIG_TFM_FLOAT_ABI STREQUAL "hard") - set(COMPILER_CP_C_FLAG "-mfloat-abi=hard") - if (CONFIG_TFM_ENABLE_FP) -- set(COMPILER_CP_C_FLAG "-mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH}") -- set(COMPILER_CP_ASM_FLAG "-mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH}") -+ if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main") -+ # setting the -mfpu option disables the floating point mve, generic +fp.dp is used instead -+ set(COMPILER_CP_C_FLAG "-mfloat-abi=hard") -+ set(COMPILER_CP_ASM_FLAG "-mfloat-abi=hard") -+ else() -+ set(COMPILER_CP_C_FLAG "-mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH}") -+ set(COMPILER_CP_ASM_FLAG "-mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH}") -+ endif() - # armasm and armlink have the same option "--fpu" and are both used to - # specify the target FPU architecture. So the supported FPU architecture - # names can be shared by armasm and armlink. -diff --git a/toolchain_ARMCLANG.cmake b/toolchain_ARMCLANG.cmake -index cc0ac1966..7050adebb 100644 ---- a/toolchain_ARMCLANG.cmake -+++ b/toolchain_ARMCLANG.cmake -@@ -36,8 +36,15 @@ if (DEFINED TFM_SYSTEM_PROCESSOR) - set(CMAKE_SYSTEM_PROCESSOR ${TFM_SYSTEM_PROCESSOR}) - - if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main") -- message(WARNING "MVE is not yet supported using ARMCLANG") -- string(APPEND CMAKE_SYSTEM_PROCESSOR "+nomve") -+ if(NOT CONFIG_TFM_ENABLE_MVE) -+ string(APPEND CMAKE_SYSTEM_PROCESSOR "+nomve") -+ endif() -+ if((NOT TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m85") -+ AND (NOT CONFIG_TFM_ENABLE_MVE_FP) -+ AND CONFIG_TFM_ENABLE_MVE -+ AND CONFIG_TFM_ENABLE_FP) -+ string(APPEND CMAKE_SYSTEM_PROCESSOR "+nomve.fp") -+ endif() - endif() - - if (DEFINED TFM_SYSTEM_DSP) -@@ -73,17 +80,31 @@ set(CMAKE_C_COMPILER_TARGET arm-${CROSS_COMPILE}) - set(CMAKE_CXX_COMPILER_TARGET arm-${CROSS_COMPILE}) - set(CMAKE_ASM_COMPILER_TARGET arm-${CROSS_COMPILE}) - --# MVE is currently not supported in case of armclang - if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main") -- string(APPEND CMAKE_SYSTEM_ARCH "+nomve") --endif() -+ # These three feature options are the only ones armlink accepts -+ if(CONFIG_TFM_ENABLE_MVE_FP) -+ string(APPEND CMAKE_SYSTEM_ARCH "+mve.fp") -+ elseif(CONFIG_TFM_ENABLE_MVE) -+ string(APPEND CMAKE_SYSTEM_ARCH "+mve") -+ elseif(TFM_SYSTEM_DSP) -+ string(APPEND CMAKE_SYSTEM_ARCH "+dsp") -+ endif() - --if (DEFINED TFM_SYSTEM_DSP) -- if(NOT TFM_SYSTEM_DSP) -- string(APPEND CMAKE_SYSTEM_ARCH "+nodsp") -+ # Generic fp extension names to be used instead of -mfpu -+ # +fp/fpv5-sp-d16 is not handled as it is the default -+ if(CONFIG_TFM_ENABLE_FP) -+ if (CONFIG_TFM_FP_ARCH STREQUAL "fpv5-d16") -+ string(APPEND CMAKE_SYSTEM_ARCH "+fp.dp") -+ endif() -+ else() -+ string(APPEND CMAKE_SYSTEM_ARCH "+nofp") - endif() - endif() - -+if(TFM_SYSTEM_DSP AND (NOT TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main")) -+ string(APPEND CMAKE_SYSTEM_ARCH "+dsp") -+endif() -+ - # Cmake's ARMClang support has several issues with compiler validation. To - # avoid these, we set the list of supported -mcpu and -march variables to - # the ones we intend to use so that the validation will never fail. -@@ -159,24 +180,37 @@ if (CMAKE_SYSTEM_PROCESSOR) - set(CMAKE_C_FLAGS "-mcpu=${CMAKE_SYSTEM_PROCESSOR}") - set(CMAKE_CXX_FLAGS "-mcpu=${CMAKE_SYSTEM_PROCESSOR}") - set(CMAKE_ASM_FLAGS "--target=${CMAKE_ASM_COMPILER_TARGET} -mcpu=${CMAKE_SYSTEM_PROCESSOR}") -- set(CMAKE_C_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -- set(CMAKE_CXX_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -- set(CMAKE_ASM_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -+ -+ set(ARMLINK_MAPPED_OPTION "--cpu=${CMAKE_SYSTEM_PROCESSOR}") - # But armlink doesn't support this +dsp syntax -- string(REGEX REPLACE "\\+nodsp" "" CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nodsp" "" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nodsp" "" CMAKE_ASM_LINK_FLAGS "${CMAKE_ASM_LINK_FLAGS}") -- # And uses different syntax for +nofp -- string(REGEX REPLACE "\\+nofp" ".no_fp" CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nofp" ".no_fp" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nofp" ".no_fp" CMAKE_ASM_LINK_FLAGS "${CMAKE_ASM_LINK_FLAGS}") -- -- string(REGEX REPLACE "\\+nomve" ".no_mve" CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nomve" ".no_mve" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") -- string(REGEX REPLACE "\\+nomve" ".no_mve" CMAKE_ASM_LINK_FLAGS "${CMAKE_ASM_LINK_FLAGS}") -+ string(REGEX REPLACE "\\+nodsp" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ # And uses different syntax for +nofp, +nomve.fp, nomve -+ string(REGEX REPLACE "\\+nofp" ".no_fp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+nomve\\.fp" ".no_mvefp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+nomve" ".no_mve" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ -+ set(CMAKE_C_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_CXX_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_ASM_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) - else() - set(CMAKE_C_FLAGS "-march=${CMAKE_SYSTEM_ARCH}") - set(CMAKE_CXX_FLAGS "-march=${CMAKE_SYSTEM_ARCH}") -+ set(CMAKE_ASM_FLAGS "--target=${CMAKE_ASM_COMPILER_TARGET} -march=${CMAKE_SYSTEM_ARCH}") -+ -+ set(ARMLINK_MAPPED_OPTION "--cpu=${CMAKE_SYSTEM_PROCESSOR}") -+ # Mapping the architecture name -+ string(REGEX REPLACE "armv" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ # Armlink uses --fpu option instead of the generic extension names -+ string(REGEX REPLACE "\\+fp\\.dp" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+nofp" "" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ # And different syntax for these features -+ string(REGEX REPLACE "\\+mve\\.fp" ".mve.fp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+mve" ".mve" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ string(REGEX REPLACE "\\+dsp" ".dsp" ARMLINK_MAPPED_OPTION "${ARMLINK_MAPPED_OPTION}") -+ -+ set(CMAKE_C_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_CXX_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) -+ set(CMAKE_ASM_LINK_FLAGS ${ARMLINK_MAPPED_OPTION}) - endif() - - set(BL2_COMPILER_CP_FLAG -@@ -198,9 +232,12 @@ if (CONFIG_TFM_FLOAT_ABI STREQUAL "hard") - $<$:-mfloat-abi=hard> - ) - if (CONFIG_TFM_ENABLE_FP) -- set(COMPILER_CP_FLAG -- -mfpu=${CONFIG_TFM_FP_ARCH};-mfloat-abi=hard -- ) -+ if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main") -+ # setting the -mfpu option disables the floating point mve, generic +fp.dp is used instead -+ set(COMPILER_CP_FLAG -mfloat-abi=hard) -+ else() -+ set(COMPILER_CP_FLAG -mfpu=${CONFIG_TFM_FP_ARCH};-mfloat-abi=hard) -+ endif() - # armasm and armlink have the same option "--fpu" and are both used to - # specify the target FPU architecture. So the supported FPU architecture - # names can be shared by armasm and armlink. --- -2.34.1 - diff --git a/components/security/trusted_firmware-m/integration/patches/0004-mps4-Provision-dummy-ROTPK-key.patch b/components/security/trusted_firmware-m/integration/patches/0004-mps4-Provision-dummy-ROTPK-key.patch new file mode 100644 index 00000000..daa1222f --- /dev/null +++ b/components/security/trusted_firmware-m/integration/patches/0004-mps4-Provision-dummy-ROTPK-key.patch @@ -0,0 +1,40 @@ +From 2cd52db0a37910cc97d508ee4349fa82479b4620 Mon Sep 17 00:00:00 2001 +From: Ahmed Ismail +Date: Thu, 10 Apr 2025 15:42:47 +0100 +Subject: [PATCH] mps4: Provision dummy ROTPK key + +The Dummy ROTPK is provisioned as there's a defect +in TF-M v2.2.0 that the dummy ROTPK is used for the +signing of the BL2 image even if TFM_DUMMY_PROVISIONING +is disabled. Hence, we need to provision the dummy ROTPK +in the device's memory for the signature validation to work. +--- + .../common/provisioning/bundle_dm/CMakeLists.txt | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/platform/ext/target/arm/mps4/common/provisioning/bundle_dm/CMakeLists.txt b/platform/ext/target/arm/mps4/common/provisioning/bundle_dm/CMakeLists.txt +index 5a8614b8e..2bcfd3057 100644 +--- a/platform/ext/target/arm/mps4/common/provisioning/bundle_dm/CMakeLists.txt ++++ b/platform/ext/target/arm/mps4/common/provisioning/bundle_dm/CMakeLists.txt +@@ -9,6 +9,18 @@ find_package(Python3) + + add_executable(dm_provisioning_bundle) + ++# The Dummy ROTPK is provisioned as there's a defect in TF-M v2.2.0 that the dummy ++# ROTPK is used for the signing of the BL2 image even if TFM_DUMMY_PROVISIONING ++# is disabled. Hence, we need to provision the dummy ROTPK in the device's memory ++# for the signature validation to work. ++set(BL1_ROTPK_0 "0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x04, \ ++0xb6, 0xb4, 0x44, 0xcb, 0x92, 0x58, 0x4e, 0xe0, \ ++0x81, 0xb6, 0x78, 0xf3, 0x9a, 0x0d, 0xd7, 0x4e, \ ++0x0c, 0xfd, 0x7e, 0x45, 0x01, 0x76, 0xdd, 0x0c, \ ++0xb6, 0x54, 0xc9, 0xbb, 0xbf, 0x63, 0x2b, 0x14, \ ++0xb2, 0xee, 0x00, 0x89, 0x63, 0xe0, 0x43, 0xaf, \ ++0xeb, 0xe8, 0xac, 0x6c, 0x1d, 0x60, 0x5e, 0xbc," CACHE STRING "") ++ + if(${TFM_DUMMY_PROVISIONING}) + include(${CMAKE_SOURCE_DIR}/platform/ext/target/arm/mps4/common/provisioning/bundle_dm/dm_provisioning_config.cmake) + else() +-- +2.34.1 + diff --git a/components/security/trusted_firmware-m/library b/components/security/trusted_firmware-m/library index 96cc0445..dd2b7de1 160000 --- a/components/security/trusted_firmware-m/library +++ b/components/security/trusted_firmware-m/library @@ -1 +1 @@ -Subproject commit 96cc044555f57b755ca3605788798b71f2c1a180 +Subproject commit dd2b7de197742beeebd12197c14d9d3cb1b9ec68 diff --git a/manifest.yml b/manifest.yml index bdf2c4ed..cd5c9515 100644 --- a/manifest.yml +++ b/manifest.yml @@ -25,7 +25,7 @@ dependencies: license: "BSD-3-Clause" tpip-category: "category-2" security-risk: "high" - version: "96cc044555f57b755ca3605788798b71f2c1a180" + version: "TF-Mv2.2.0" repository: type: "git" url: "https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git" diff --git a/release_changes/202503171512.change.md b/release_changes/202503171512.change.md index ea88a116..0e2d9148 100644 --- a/release_changes/202503171512.change.md +++ b/release_changes/202503171512.change.md @@ -1,2 +1,3 @@ freertos-kernel: Bump to v11.2.0 release. mbedtls: Bump to v3.6.3 release. +tf-m: Bump to v2.2.0 release. From eda00d55925b956e3b0088b6613a823be3b69459 Mon Sep 17 00:00:00 2001 From: Ahmed Ismail Date: Tue, 15 Apr 2025 16:31:41 +0100 Subject: [PATCH 4/5] docs: Fix expected output for applications Signed-off-by: Ahmed Ismail --- .github/.cSpellWords.txt | 4 + docs/applications/blinky.md | 31 +- docs/applications/keyword_detection.md | 317 +++++++------- docs/applications/object_detection.md | 555 ++++++++++++------------ docs/applications/speech_recognition.md | 324 +++++++------- 5 files changed, 621 insertions(+), 610 deletions(-) diff --git a/.github/.cSpellWords.txt b/.github/.cSpellWords.txt index 8b0ecb6c..a191d441 100644 --- a/.github/.cSpellWords.txt +++ b/.github/.cSpellWords.txt @@ -45,6 +45,7 @@ Cqqpk CSRS ctest Customisation +CYBW DACTIVATION DARM DCMAKE @@ -165,6 +166,8 @@ nents NIOS NSPE NVIC +Nyhq +obec ohmyzsh Onoa OPTIM @@ -258,6 +261,7 @@ Werror WGHT wght WLATENCY +WZYKHR Xcycu xtea Xwzpc diff --git a/docs/applications/blinky.md b/docs/applications/blinky.md index 77684e7a..0d54472e 100644 --- a/docs/applications/blinky.md +++ b/docs/applications/blinky.md @@ -38,27 +38,20 @@ To run the blinky example, run the following command: ```bash [INF] Starting bootloader -[INF] Beginning BL2 provisioning -[WRN] TFM_DUMMY_PROVISIONING is not suitable for production! This device is NOT SECURE -[INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x3 -[INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 -[INF] Boot source: primary slot -[INF] Swap type: none -[INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 -[INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 -[INF] Boot source: primary slot -[INF] Swap type: none +[INF] Beginning provisioning +[INF] Waiting for provisioning bundle +[INF] Running provisioning bundle +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys +[INF] Image index: 1, Swap type: none +[INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[INF] Beginning TF-M provisioning -[WRN] TFM_DUMMY_PROVISIONING is not suitable for production! This device is NOT SECURE -[Sec Thread] Secure image initializing! -Booting TF-M v1.8.0 -Creating an empty ITS flash layout. -Creating an empty PS flash layout. -[INF][Crypto] Provisioning entropy seed... complete. -[DBG][Crypto] Initialising mbed TLS 3.4.0 as PSA Crypto backend library... complete. -psa_framework_version is: 257 +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +psa_framework_version is: 257 LED on LED off LED on diff --git a/docs/applications/keyword_detection.md b/docs/applications/keyword_detection.md index f22b2711..7103bb04 100644 --- a/docs/applications/keyword_detection.md +++ b/docs/applications/keyword_detection.md @@ -89,91 +89,85 @@ To run the Keyword-Detection example, run the following command: ```log [INF] Starting bootloader -[INF] Beginning provisioning -[INF] Waiting for provisioning bundle -[INF] Running provisioning bundle +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot -[INF] Image index: 1, Swap type: none +[INF] Image index: 1, Swap type: test +[INF] Starting swap using scratch algorithm. [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 -[INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 +[INF] Scratch: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3 [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[Sec Thread] Secure image initializing! -Booting TF-M v2.1.1 -Creating an empty ITS flash layout. -Creating an empty PS flash layout. -[INF][Crypto] Provisioning entropy seed... complete. +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 -1 0 [None] Write certificate... -2 0 [None] [INFO] Device key provisioning succeeded -3 0 [None] [INFO] OTA signing key provisioning succeeded -4 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -5 35 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.10 -6 47 [BLINK_TASK ] [INFO] Blink task started -7 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create -8 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 -9 1000 [IP-Task] vDHCP_RATimerReload: 250 -10 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -11 1259 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -12 1260 [IP-Task] [INFO] Network is up -13 1260 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 -14 1260 [IP-Task] vDHCP_RATimerReload: 8640000 -15 1291 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. -16 1307 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. -17 1322 [IP-Task] ipARP_REPLY from ac1433feip to ac143301ip end-point ac143301ip -18 6333 [MQTT Agent Task] DNS_ReadReply returns -11 -19 6340 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 -20 6348 [MQTT Agent Task] DNS[0xA1ED]: The answer to '.amazonaws.com' (52.209.194.122) will be stored -21 6367 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 -22 6385 [MQTT Agent Task] FreeRTOS_connect: 43065 to 34d1c27aip:8883 -23 6424 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 -24 8218 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. -25 8236 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. -26 8338 [MQTT Agent Task] [INFO] MQTT connection established with the broker. -27 8349 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. -28 8360 [MQTT Agent Task] [INFO] Session present: 0 -29 8367 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. -30 8376 [OTA Task ] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 -31 8388 [OTA Agent Task] [WARN] Index: 0. OTA event id: 0 -32 8397 [OTA Agent Task] [WARN] Index: 1. OTA event id: 2 -35 9279 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//jobs/notify-next. -36 9300 [OTA Agent Task] [INFO] Subscribed to MQTT topic: $aws/things//jobs/notify-next -39 10105 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -40 10119 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -41 10131 [MQTT Agent Task] [INFO] Received incoming publish message Task 0 publishing message 0 -43 10894 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/$next/get. -44 10986 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -45 10998 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -46 11010 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -47 11025 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -48 11037 [MQTT Agent Task] [INFO] Received job message callback, size 1015. -49 11047 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/$next/get to broker. -50 11070 [OTA Agent Task] [WARN] OTA Timer handle NULL for Timerid=0, can't stop. -51 11082 [OTA Agent Task] [WARN] Index: 3. OTA event id: 3 -52 11091 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobId: AFR_OTA-ota-test-update-id-4e88b5e8-9984-4036-ab41-06bfe00f09fa] -53 11115 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.streamname: AFR_OTA-57e0fd88-2666-401d-b2d5-0d11f3d3ab22] -54 11138 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.protocols: ["MQTT"]] -55 11156 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filepath: non_secure image] -56 11171 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filesize: 880417] -57 11184 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[fileid: 0] -58 11196 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[certfile: 0] -59 11208 [OTA Agent Task] [INFO] Extracted parameter [ sig-sha256-rsa: FK3UxyXZT1+Xb0WOHskeiYPJLH/RA/9h... ] -60 11225 [OTA Agent Task] [INFO] Job document was accepted. Attempting to begin the update. -61 11239 [OTA Agent Task] [INFO] Job parsing success: OtaJobParseErr_t=OtaJobParseErrNone, Job name=AFR_OTA-ota-test-update-id-4e88b5e8-9984-4036-ab41-06bfe00f09fa -62 11262 [OTA Agent Task] [WARN] Received an unhandled callback event from OTA Agent, event = 6 -63 11276 [ML_TASK] [INFO] Initial start of audio processing -64 11284 [ML_TASK] [INFO] Ethos-U55 device initialised -65 11292 [ML_TASK] [INFO] Ethos-U version info: -66 11298 [ML_TASK] [INFO] Arch: v1.1.0 -67 11305 [ML_TASK] [INFO] Driver: v0.16.0 -68 11311 [ML_TASK] [INFO] MACs/cc: 256 -69 11317 [ML_TASK] [INFO] Cmd stream: v0 +1 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip +2 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +3 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +4 23 [BLINK_TASK ] [INFO] Blink task started +5 27 [OTA Task] [INFO] OTA over MQTT, firmware versions: +6 33 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +7 40 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.20 +8 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create +9 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 +10 1000 [IP-Task] vDHCP_RATimerReload: 250 +11 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +12 1257 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +13 1257 [IP-Task] [INFO] Network is up +14 1257 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +15 1257 [IP-Task] vDHCP_RATimerReload: 6480000 +16 1281 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. +17 1293 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. +18 6304 [MQTT Agent Task] DNS_ReadReply returns -11 +19 6309 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 +20 6317 [MQTT Agent Task] DNS[0xD64C]: The answer to '.amazonaws.com' (63.35.107.16) will be stored +21 6331 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 +22 6344 [MQTT Agent Task] FreeRTOS_connect: 58661 to 3f236b10ip:8883 +23 6415 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 +24 8238 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. +25 8251 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. +26 8439 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. +27 8447 [MQTT Agent Task] [INFO] Session present: 0 +28 8453 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. +29 8460 [OTA Agent Task] [INFO] Requesting job document. +30 8468 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/start-next to broker. +31 8626 [MQTT Agent Task] [INFO] Received job message callback, size 1080. +32 8637 [OTA Agent Task] [INFO] Extracted parameter: [jobid: AFR_OTA-ota-test-update-id-f1af3c74-44c9-4c6a-a820-90c0109a3fd2] +33 8650 [OTA Agent Task] [INFO] Extracted parameter: [streamname: AFR_OTA-8ba5c498-5521-4380-a01b-f830ab9d427f] +34 8662 [OTA Agent Task] [INFO] Extracted parameter: [filepath: non_secure image] +35 8670 [OTA Agent Task] [INFO] Extracted parameter: [filesize: 596736] +36 8678 [OTA Agent Task] [INFO] Extracted parameter: [fileid: 0] +37 8685 [OTA Agent Task] [INFO] Extracted parameter: [certfile: 0] +38 8692 [OTA Agent Task] [INFO] Extracted parameter: [sig-sha256-rsa: ipfV1xmxH/WZYKHRPu9PqVet...] +39 8753 [OTA Agent Task] [INFO] Application version of the new image is not higher than the current image: New images are expected to have a higher version number. +40 9386 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/AFR_OTA-ota-test-update-id-f1af3c74-44c9-4c6a-a820-90c0109a3fd2/update to broker. +41 9409 [OTA Agent Task] [INFO] No OTA job available. +42 9415 [OTA Agent Task] [INFO] Signal task inference start +43 9421 [ML_TASK] [INFO] Initial start of audio processing +INFO - Initialising Ethos-U device@0x40004000 +INFO - Ethos-U device initialised +INFO - Ethos-U version info: +INFO - Arch: v1.1.0 +INFO - Driver: v0.16.0 +INFO - MACs/cc: 256 +INFO - Cmd stream: v0 +44 9450 [ML_TASK] [INFO] Ethos-U55 device initialised +45 9455 [ML_TASK] [INFO] Ethos-U version info: +46 9460 [ML_TASK] [INFO] Arch: v1.1.0 +47 9465 [ML_TASK] [INFO] Driver: v0.16.0 +48 9470 [ML_TASK] [INFO] MACs/cc: 256 +49 9474 [ML_TASK] [INFO] Cmd stream: v0 INFO - Added ethos-u support to op resolver -INFO - Creating allocator using tensor arena at 0x6004c900 +INFO - Creating allocator using tensor arena at 0x6004c940 INFO - Allocating tensors INFO - Model INPUT tensors: INFO - tensor type is INT8 @@ -196,27 +190,22 @@ INFO - ZeroPoint[0] = -54 INFO - Activation buffer (a.k.a tensor arena) size used: 104508 INFO - Number of operators: 1 INFO - Operator 0: ethos-u -70 11423 [ML_TASK] [INFO] *** ML interface initialised -71 11443 [ML_TASK] [INFO] Running inference on an audio clip in local memory -72 11467 [OTA Agent Task] [INFO] Signal task inference start -[warning ][main@0][3706 ns] TA0 is not enabled! -[warning ][main@0][3706 ns] TA1 is not enabled! -73 11490 [ML_TASK] [INFO] For timestamp: 0.000000 (inference #: 0); label: on, score: 0.996127; threshold: 0.700000 -74 11507 [ML_MQTT] [INFO] Attempting to publish (on) to the MQTT topic /ml/inference. -75 11528 [BLINK_TASK ] [INFO] ML_HEARD_ON -76 11545 [ML_TASK] [INFO] For timestamp: 0.500000 (inference #: 1); label: on, score: 0.962542; threshold: 0.700000 -77 11579 [ML_TASK] [INFO] For timestamp: 1.000000 (inference #: 2); label: ; threshold: 0.000000 -78 11595 [BLINK_TASK ] [INFO] ML UNKNOWN -79 11612 [ML_TASK] [INFO] For timestamp: 1.500000 (inference #: 3); label: off, score: 0.999030; threshold: 0.700000 -80 11628 [BLINK_TASK ] [INFO] ML_HEARD_OFF -81 11636 [OTA Agent Task] [INFO] Setting OTA data interface. -82 11652 [OTA Agent Task] [INFO] Signal task inference start -83 11660 [ML_TASK] [INFO] For timestamp: 2.000000 (inference #: 4); label: ; threshold: 0.000000 -85 11675 [OTA Agent Task] [WARN] Index: 5. OTA event id: 4 -84 11674 [BLINK_TASK ] [INFO] ML UNKNOWN -86 11697 [ML_TASK] [INFO] For timestamp: 2.500000 (inference #: 5); label: ; threshold: 0.000000 -87 11729 [ML_TASK] [INFO] For timestamp: 3.000000 (inference #: 6); label: go, score: 0.998854; threshold: 0.700000 -88 11745 [BLINK_TASK ] [INFO] ML_HEARD_GO +50 9554 [ML_TASK] [INFO] *** ML interface initialised +51 9569 [ML_TASK] [INFO] Running inference on an audio clip in local memory +[warning ][main@0][4669 ns] TA0 is not enabled! +[warning ][main@0][4669 ns] TA1 is not enabled! +52 9609 [ML_TASK] [INFO] ML_HEARD_ON +53 9613 [ML_MQTT] [INFO] Attempting to publish (on) to the MQTT topic /ml/inference. +54 9628 [ML_TASK] [INFO] For timestamp: 0.000000 (inference #: 0); label: on, score: 0.996127; threshold: 0.700000 +55 9657 [ML_TASK] [INFO] For timestamp: 0.500000 (inference #: 1); label: on, score: 0.962542; threshold: 0.700000 +56 9686 [ML_TASK] [INFO] ML UNKNOWN +57 9690 [ML_TASK] [INFO] For timestamp: 1.000000 (inference #: 2); label: ; threshold: 0.000000 +58 9718 [ML_TASK] [INFO] ML_HEARD_OFF +59 9722 [ML_TASK] [INFO] For timestamp: 1.500000 (inference #: 3); label: off, score: 0.999030; threshold: 0.700000 +60 9751 [ML_TASK] [INFO] ML UNKNOWN +61 9755 [ML_TASK] [INFO] For timestamp: 2.000000 (inference #: 4); label: ; threshold: 0.000000 +62 9783 [ML_TASK] [INFO] For timestamp: 2.500000 (inference #: 5); label: ; threshold: 0.000000 +63 9811 [ML_TASK] [INFO] ML_HEARD_GO ``` ## Observing MQTT connectivity @@ -234,6 +223,7 @@ Follow the instructions described in the [Firmware update with AWS](./aws_iot/aw [INF] Beginning provisioning [INF] Waiting for provisioning bundle [INF] Running provisioning bundle +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot @@ -243,71 +233,80 @@ Follow the instructions described in the [Firmware update with AWS](./aws_iot/aw [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[Sec Thread] Secure image initializing! -Booting TF-M v2.1.1 +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled Creating an empty ITS flash layout. Creating an empty PS flash layout. -[INF][Crypto] Provisioning entropy seed... complete. +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 1 0 [None] Write certificate... 2 0 [None] [INFO] Device key provisioning succeeded 3 0 [None] [INFO] OTA signing key provisioning succeeded 4 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -5 35 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.10 -6 47 [BLINK_TASK ] [INFO] Blink task started -7 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create -8 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 -9 1000 [IP-Task] vDHCP_RATimerReload: 250 -10 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -11 1259 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -12 1260 [IP-Task] [INFO] Network is up -13 1260 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 -14 1260 [IP-Task] vDHCP_RATimerReload: 8640000 -15 1291 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. -16 1307 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. -17 1322 [IP-Task] ipARP_REPLY from ac1433feip to ac143301ip end-point ac143301ip -18 6333 [MQTT Agent Task] DNS_ReadReply returns -11 -19 6340 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 -20 6348 [MQTT Agent Task] DNS[0xA1ED]: The answer to '.amazonaws.com' (52.209.194.122) will be stored -21 6367 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 -22 6385 [MQTT Agent Task] FreeRTOS_connect: 43065 to 34d1c27aip:8883 -23 6424 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 -24 8218 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. -25 8236 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. +5 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +6 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +7 38 [BLINK_TASK ] [INFO] Blink task started +8 42 [OTA Task] [INFO] OTA over MQTT, firmware versions: +9 48 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +10 55 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.10 +11 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create +12 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 +13 1000 [IP-Task] vDHCP_RATimerReload: 250 +14 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +15 1257 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +16 1257 [IP-Task] [INFO] Network is up +17 1257 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +18 1257 [IP-Task] vDHCP_RATimerReload: 6480000 +19 1281 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. +20 1293 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. +21 6304 [MQTT Agent Task] DNS_ReadReply returns -11 +22 6309 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 +23 6316 [MQTT Agent Task] DNS[0xEEF9]: The answer to '.amazonaws.com' (54.194.168.245) will be stored +24 6330 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 +25 6344 [MQTT Agent Task] FreeRTOS_connect: 55035 to 36c2a8f5ip:8883 +26 6412 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 +27 8034 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. +28 8047 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. ... -48 11037 [MQTT Agent Task] [INFO] Received job message callback, size 1015. -49 11047 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/$next/get to broker. -50 11070 [OTA Agent Task] [WARN] OTA Timer handle NULL for Timerid=0, can't stop. -51 11082 [OTA Agent Task] [WARN] Index: 3. OTA event id: 3 -52 11091 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobId: AFR_OTA-ota-test-update-id-4e88b5e8-9984-4036-ab41-06bfe00f09fa] -53 11115 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.streamname: AFR_OTA-57e0fd88-2666-401d-b2d5-0d11f3d3ab22] -54 11138 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.protocols: ["MQTT"]] -55 11156 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filepath: non_secure image] -56 11171 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filesize: 880417] -57 11184 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[fileid: 0] -58 11196 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[certfile: 0] -59 11208 [OTA Agent Task] [INFO] Extracted parameter [ sig-sha256-rsa: FK3UxyXZT1+Xb0WOHskeiYPJLH/RA/9h... ] -60 11225 [OTA Agent Task] [INFO] Job document was accepted. Attempting to begin the update. +34 8435 [MQTT Agent Task] [INFO] Received job message callback, size 1046. +35 8445 [OTA Agent Task] [INFO] Extracted parameter: [jobid: AFR_OTA-ota-test-update-id-f1af3c74-44c9-4c6a-a820-90c0109a3fd2] +36 8459 [OTA Agent Task] [INFO] Extracted parameter: [streamname: AFR_OTA-8ba5c498-5521-4380-a01b-f830ab9d427f] +37 8470 [OTA Agent Task] [INFO] Extracted parameter: [filepath: non_secure image] +38 8479 [OTA Agent Task] [INFO] Extracted parameter: [filesize: 596736] +39 8487 [OTA Agent Task] [INFO] Extracted parameter: [fileid: 0] +40 8493 [OTA Agent Task] [INFO] Extracted parameter: [certfile: 0] +41 8500 [OTA Agent Task] [INFO] Extracted parameter: [sig-sha256-rsa: ipfV1xmxH/WZYKHRPu9PqVet...] +42 9411 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//streams/AFR_OTA-8ba5c498-5521-4380-a01b-f830ab9d427f/data/json. +43 9456 [OTA Agent Task] [INFO] Received OTA job document. +44 9462 [OTA Agent Task] [INFO] Signal task inference stop +45 9468 [OTA Agent Task] [INFO] Requesting file block. +46 9474 [OTA Agent Task] [INFO] Starting the download. ... -2374 398303 [MQTT Agent Task] [INFO] Publishing message to $aws/things//streams/AFR_OTA-57e0fd88-2666-401d-b2d5-0d11f3d3ab22/get/cbor. -2375 398369 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-57e0fd88-2666-401d-b2d5-0d11f3d3ab22/get/cbor to broker. -2376 399016 [OTA Task ] [INFO] Received: 214 Queued: 214 Processed: 214 Dropped: 0 -2377 399373 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -2378 399388 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -2379 399400 [MQTT Agent Task] [INFO] Received data message callback, size 3898. -2380 399411 [OTA Agent Task] [WARN] Index: 9. OTA event id: 6 -2381 399421 [OTA Agent Task] [INFO] Received final block of the update. -2382 400422 [OTA Agent Task] [INFO] Received entire update and validated the signature. +768 218735 [MQTT Agent Task] [INFO] Received data message callback, size 5495. +769 218743 [OTA Agent Task] [INFO] Received file block. +770 218751 [OTA Agent Task] [INFO] Downloaded block 144 of 146. +771 218758 [OTA Agent Task] [INFO] Requesting file block. +772 219495 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-8ba5c498-5521-4380-a01b-f830ab9d427f/get/json to broker. +773 219890 [MQTT Agent Task] [INFO] Received data message callback, size 3787. +774 219898 [OTA Agent Task] [INFO] Received file block. +775 219905 [OTA Agent Task] [INFO] Downloaded block 145 of 146. +776 219912 [OTA Agent Task] [INFO] Closing file. +777 220196 [OTA Agent Task] [INFO] Attempting to activate image. ... -2387 401573 [OTA Agent Task] [INFO] Received OtaJobEventActivate callback from OTA Agent. [INF] Starting bootloader +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot @@ -318,25 +317,23 @@ Creating an empty PS flash layout. [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[Sec Thread] Secure image initializing! -Booting TF-M v2.1.1 -[INF][Crypto] Provisioning entropy seed... complete. +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 -1 0 [None] Write certificate... -2 0 [None] [INFO] Device key provisioning succeeded -3 0 [None] [INFO] OTA signing key provisioning succeeded -4 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -5 35 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.20 - -... - -41 2768 [OTA Agent Task] [INFO] In self test mode. -42 2768 [OTA Agent Task] [INFO] New image has a higher version number than the current image: New image version=0.0.20, Previous image version=0.0.10 -43 2769 [OTA Agent Task] [INFO] Image version is valid: Begin testing file: File ID=0 -58 4381 [OTA Agent Task] [INFO] Beginning self-test. -59 4382 [OTA Agent Task] [INFO] Received OtaJobEventStartTest callback from OTA Agent. -74 6002 [OTA Agent Task] [INFO] New image validation succeeded in self test mode. +1 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip +2 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +3 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +4 23 [BLINK_TASK ] [INFO] Blink task started +5 27 [OTA Task] [INFO] OTA over MQTT, firmware versions: +6 33 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +7 40 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.20 ``` ## Running AWS IoT Core Device Advisor tests diff --git a/docs/applications/object_detection.md b/docs/applications/object_detection.md index 5a41e21c..3fc08e8c 100644 --- a/docs/applications/object_detection.md +++ b/docs/applications/object_detection.md @@ -55,7 +55,15 @@ Check [Device Provisioning](./device_provisioning/device_provisioning.md) for de ### Expected output ```log +[INF] Starting TF-M BL1_1 +[INF] Jumping to BL1_2 +[INF] Starting TF-M BL1_2 +[INF] Attempting to boot image 0 +[INF] BL2 image decrypted successfully +[INF] BL2 image validated successfully +[INF] Jumping to BL2 [INF] Starting bootloader +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot @@ -66,110 +74,76 @@ Check [Device Provisioning](./device_provisioning/device_provisioning.md) for de [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -Booting TF-M v2.1.1 -[Sec Thread] Secure image initializing! -[INF][Crypto] Provisioning entropy seed... complete. +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 -1 0 [None] Write certificate... -2 0 [None] [INFO] Device key provisioning succeeded -3 0 [None] [INFO] OTA signing key provisioning succeeded -4 0 [None] [INFO] Signal task inference stop -5 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -6 41 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.20 -7 54 [ML_TASK] [INFO] ML Task start -8 59 [BLINK_TASK ] [INFO] Blink task started -9 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create -10 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 -11 1000 [IP-Task] vDHCP_RATimerReload: 250 -12 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -13 1260 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -14 1260 [IP-Task] [INFO] Network is up -15 1260 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 -16 1260 [IP-Task] vDHCP_RATimerReload: 8640000 -17 1291 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. -18 1307 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. -19 1322 [IP-Task] ipARP_REPLY from ac1433feip to ac143301ip end-point ac143301ip -20 6334 [MQTT Agent Task] DNS_ReadReply returns -11 -21 6341 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 -22 6356 [MQTT Agent Task] DNS[0xE135]: The answer to '.amazonaws.com' (99.81.255.142) will be stored -23 6374 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 -24 6392 [MQTT Agent Task] FreeRTOS_connect: 37762 to 6351ff8eip:8883 -25 6492 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 -26 8622 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. -27 8640 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. -28 8993 [MQTT Agent Task] [INFO] MQTT connection established with the broker. -29 9004 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. -30 9014 [MQTT Agent Task] [INFO] Session present: 0 -31 9022 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. -32 9031 [OTA Task ] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 -33 9042 [OTA Agent Task] [INFO] Current State=[RequestingJob], Event=[Start], New state=[RequestingJob] -34 9413 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//jobs/notify-next. -35 9432 [OTA Agent Task] [INFO] Subscribed to MQTT topic: $aws/things//jobs/notify-next -36 10163 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/$next/get. -37 10484 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -38 10496 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -39 10508 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/$next/get to broker. -40 10530 [OTA Agent Task] [WARN] OTA Timer handle NULL for Timerid=0, can't stop. -41 10542 [OTA Agent Task] [INFO] Current State=[WaitingForJob], Event=[RequestJobDocument], New state=[WaitingForJob] -42 11258 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -43 11272 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -44 11284 [MQTT Agent Task] [INFO] Received job message callback, size 1112. -45 11295 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobId: AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a] -46 11318 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.statusDetails.updatedBy: 10] -47 11335 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.streamname: AFR_OTA-eac26517-1848-4705-8242-97bda52cab40] -48 11358 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.protocols: ["MQTT"]] -49 11375 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filepath: non_secure image] -50 11389 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filesize: 1141641] -51 11402 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[fileid: 0] -52 11413 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[certfile: 0] -53 11426 [OTA Agent Task] [INFO] Extracted parameter [ sig-sha256-rsa: LUOGFk3dx7VoXvS7tJl5MJObgHtbCJgZ... ] -54 11442 [OTA Agent Task] [INFO] In self test mode. -55 11450 [OTA Agent Task] [INFO] New image has a higher version number than the current image: New image version=0.0.20, Previous image version=0.0.10 -56 11471 [OTA Agent Task] [INFO] Image version is valid: Begin testing file: File ID=0 -57 12044 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a/update. -58 12372 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -59 12383 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -60 12395 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -61 12410 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -62 12421 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a/update to broker. -63 12452 [OTA Agent Task] [INFO] Job parsing success: OtaJobParseErr_t=OtaJobParseErrNone, Job name=AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a -64 12475 [OTA Agent Task] [INFO] Signal task inference stop -65 12484 [OTA Agent Task] [INFO] Current State=[CreatingFile], Event=[ReceivedJobDocument], New state=[CreatingFile] -66 12500 [OTA Agent Task] [INFO] Beginning self-test. -67 12508 [OTA Agent Task] [INFO] Received OtaJobEventStartTest callback from OTA Agent. -68 13171 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a/update. -69 13498 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -70 13510 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -71 13521 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -72 13536 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -73 13548 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a/update to broker. -74 13579 [OTA Agent Task] [INFO] New image validation succeeded in self test mode. -75 13590 [OTA Agent Task] [INFO] OTA active state `4` from OTA Agent. -76 13600 [OTA Agent Task] [INFO] Signal task inference stop -77 13608 [OTA Agent Task] [WARN] OTA Timer handle NULL for Timerid=1, can't stop. -78 13620 [OTA Agent Task] [INFO] Current State=[WaitingForJob], Event=[StartSelfTest], New state=[WaitingForJob] -79 17048 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -80 17062 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPubAckSend. -81 17074 [MQTT Agent Task] [INFO] Received job message callback, size 24. -82 17085 [OTA Agent Task] [INFO] No active job available in received job document: OtaJobParseErr_t=OtaJobParseErrNoActiveJobs -83 17102 [OTA Agent Task] [INFO] Signal task inference start -84 17111 [OTA Agent Task] [INFO] Current State=[WaitingForJob], Event=[ReceivedJobDocument], New state=[CreatingFile] -85 17127 [ML_TASK] [INFO] Initial start of image processing +1 0 [None] [INFO] Signal task inference stop +2 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip +3 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +4 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +5 27 [OTA Task] [INFO] OTA over MQTT, firmware versions: +6 33 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +7 40 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.20 +8 47 [ML_TASK] [INFO] ML Task start +9 51 [BLINK_TASK ] [INFO] Blink task started +10 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create +11 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 +12 1000 [IP-Task] vDHCP_RATimerReload: 250 +13 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +14 1257 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +15 1257 [IP-Task] [INFO] Network is up +16 1257 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +17 1257 [IP-Task] vDHCP_RATimerReload: 6480000 +18 1281 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. +19 1293 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. +20 6304 [MQTT Agent Task] DNS_ReadReply returns -11 +21 6309 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 +22 6317 [MQTT Agent Task] DNS[0xB667]: The answer to '.amazonaws.com' (54.247.164.78) will be stored +23 6331 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 +24 6344 [MQTT Agent Task] FreeRTOS_connect: 6371 to 36f7a44eip:8883 +25 6420 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 +26 8264 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. +27 8277 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. +28 8479 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. +29 8487 [MQTT Agent Task] [INFO] Session present: 0 +30 8492 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. +31 8499 [OTA Agent Task] [INFO] Requesting job document. +32 8507 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/start-next to broker. +33 8673 [MQTT Agent Task] [INFO] Received job message callback, size 1080. +34 8684 [OTA Agent Task] [INFO] Extracted parameter: [jobid: AFR_OTA-ota-test-update-id-ff61f445-de82-4d18-b0d7-e848797356fa] +35 8697 [OTA Agent Task] [INFO] Extracted parameter: [streamname: AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2] +36 8709 [OTA Agent Task] [INFO] Extracted parameter: [filepath: non_secure image] +37 8717 [OTA Agent Task] [INFO] Extracted parameter: [filesize: 564703] +38 8725 [OTA Agent Task] [INFO] Extracted parameter: [fileid: 0] +39 8732 [OTA Agent Task] [INFO] Extracted parameter: [certfile: 0] +40 8739 [OTA Agent Task] [INFO] Extracted parameter: [sig-sha256-rsa: NuNyhq1NrCPe6Mpd0eAmf605MbCYBW4obec...] +41 8800 [OTA Agent Task] [INFO] Application version of the new image is not higher than the current image: New images are expected to have a higher version number. +42 9433 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/AFR_OTA-ota-test-update-id-ff61f445-de82-4d18-b0d7-e848797356fa/update to broker. +43 9456 [OTA Agent Task] [INFO] No OTA job available. +44 9462 [OTA Agent Task] [INFO] Signal task inference start +45 9468 [ML_TASK] [INFO] Initial start of image processing +INFO - Initialising Ethos-U device@0x40004000 INFO - Ethos-U device initialised INFO - Ethos-U version info: INFO - Arch: v1.1.0 INFO - Driver: v0.16.0 INFO - MACs/cc: 256 INFO - Cmd stream: v0 -86 17159 [ML_TASK] [INFO] Ethos-U65 device initialised -87 17167 [ML_TASK] [INFO] Ethos-U version info: -88 17173 [ML_TASK] [INFO] Arch: v1.1.0 -89 17180 [ML_TASK] [INFO] Driver: v0.16.0 -90 17187 [ML_TASK] [INFO] MACs/cc: 256 -91 17192 [ML_TASK] [INFO] Cmd stream: v0 +46 9497 [ML_TASK] [INFO] Ethos-U55 device initialised +47 9502 [ML_TASK] [INFO] Ethos-U version info: +48 9507 [ML_TASK] [INFO] Arch: v1.1.0 +49 9512 [ML_TASK] [INFO] Driver: v0.16.0 +50 9517 [ML_TASK] [INFO] MACs/cc: 256 +51 9521 [ML_TASK] [INFO] Cmd stream: v0 INFO - Added ethos-u support to op resolver -INFO - Creating allocator using tensor arena at 0x0x6006b440 +INFO - Creating allocator using tensor arena at 0x6006b440 INFO - Allocating tensors INFO - Model INPUT tensors: INFO - tensor type is INT8 @@ -200,10 +174,10 @@ INFO - 3: 18 INFO - Quant dimension: 0 INFO - Scale[0] = 0.185359 INFO - ZeroPoint[0] = 10 -INFO - Activation buffer (a.k.a tensor arena) size used: 370024 +INFO - Activation buffer (a.k.a tensor arena) size used: 370056 INFO - Number of operators: 1 INFO - Operator 0: ethos-u -INFO - Model address: 0x0x60000000INFO - Model size: 439360 bytes.INFO - Model info: +INFO - Model address: 0x60000000INFO - Model size: 439360 bytes.INFO - Model info: INFO - Model INPUT tensors: INFO - tensor type is INT8 INFO - tensor occupies 36864 bytes with dimensions @@ -233,127 +207,102 @@ INFO - 3: 18 INFO - Quant dimension: 0 INFO - Scale[0] = 0.185359 INFO - ZeroPoint[0] = 10 -INFO - Activation buffer (a.k.a tensor arena) size used: 370024 +INFO - Activation buffer (a.k.a tensor arena) size used: 370056 INFO - Number of operators: 1 INFO - Operator 0: ethos-u INFO - The model is optimised for Ethos-U NPU: yes. -92 17474 [ML_TASK] [INFO] *** ML interface initialised -93 17481 [ML_TASK] [INFO] ISP init -94 17486 [ML_TASK] [INFO] Starting HDLCD config! -95 17493 [ML_TASK] [INFO] Starting ISP init! -00T00:00:17.500Z GENERIC(ERR) :PINGISP -1:4830ab6c(58140) <-> 0x212f6f7c(58140) -2:48318e88(16384) <-> 0x21305298(16384) -00T00:00:17.517Z GENERIC(ERR) :PoNGISP -1:48322b2c(58140) <-> 0x212f6f7c(58140) -2:48330e48(16384) <-> 0x21305298(16384) -00T00:00:17.534Z GENERIC(ERR) :PINGMET -1:483054a8(4096) <-> 0x212f18b8(4096) -2:483095ac(4672) <-> 0x212f59bc(4672) -00T00:00:17.550Z GENERIC(ERR) :PoNGMET -1:483054a8(4096) <-> 0x212f18b8(4096) -2:4832156c(4672) <-> 0x212f59bc(4672) -00T00:00:17.567Z SENSOR(NOTICE) :Sensor initialization is complete, ID 0xFFFF resolution 576x576 -00T00:00:17.581Z GENERIC(ERR) :DMA alloc: 0xca800, Memory left: 0x47b800 -00T00:00:17.596Z CROP(NOTICE) :FR update: Crop: e 0 x 0, y 0, w 576, h 576, Downscaler: e 0, w 576, h 576 -00T00:00:17.611Z CROP(NOTICE) :DS update: Crop: e 0 x 0, y 0, w 576, h 576, Downscaler: e 0, w 576, h 576 -00T00:00:17.636Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #0 -- +52 9732 [ML_TASK] [INFO] *** ML interface initialised +53 9738 [ML_TASK] [INFO] ISP init +54 9742 [ML_TASK] [INFO] Starting HDLCD config! +55 9747 [ML_TASK] [INFO] Starting ISP init! +00T00:00:09.752Z GENERIC(ERR) :PINGISP +1:4830ab6c(58140) <-> 212f7234(58140) +2:48318e88(16384) <-> 21305550(16384) +00T00:00:09.764Z GENERIC(ERR) :PoNGISP +1:48322b2c(58140) <-> 212f7234(58140) +2:48330e48(16384) <-> 21305550(16384) +00T00:00:09.776Z GENERIC(ERR) :PINGMET +1:483054a8(4096) <-> 212f1b70(4096) +2:483095ac(4672) <-> 212f5c74(4672) +00T00:00:09.787Z GENERIC(ERR) :PoNGMET +1:483054a8(4096) <-> 212f1b70(4096) +2:4832156c(4672) <-> 212f5c74(4672) +00T00:00:09.800Z SENSOR(NOTICE) :Sensor initialization is complete, ID 0xFFFF resolution 576x576 +00T00:00:09.810Z GENERIC(ERR) :DMA alloc: 0xca800, Memory left: 0x47b800 +00T00:00:09.820Z CROP(NOTICE) :FR update: Crop: e 0 x 0, y 0, w 576, h 576, Downscaler: e 0, w 576, h 576 +00T00:00:09.831Z CROP(NOTICE) :DS update: Crop: e 0 x 0, y 0, w 576, h 576, Downscaler: e 0, w 576, h 576 +00T00:00:09.853Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #0 -- abstract_port__vsync_s__setValue : (idx = 0) Frame #0 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #0 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #0 is ready. abstract_port__vsync_s__setValue : (idx = 0) Frame #0 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #0 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #0 is ready. -00T00:00:17.646Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 0 -00T00:00:17.646Z GENERIC(ERR) :Attempt to start a new frame before processing is done for the previous one. Skip this frame. -00T00:00:17.762Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #1 -- +00T00:00:09.860Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 0 +00T00:00:09.860Z GENERIC(ERR) :Attempt to start a new frame before processing is done for the previous one. Skip this frame. +00T00:00:09.976Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #1 -- abstract_port__vsync_s__setValue : (idx = 0) Frame #1 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #1 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #1 is ready. abstract_port__vsync_s__setValue : (idx = 0) Frame #1 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #1 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #1 is ready. -00T00:00:17.772Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 1 -00T00:00:17.888Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #2 -- +00T00:00:09.983Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 1 +00T00:00:10.099Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #2 -- abstract_port__vsync_s__setValue : (idx = 0) Frame #2 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #2 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #2 is ready. abstract_port__vsync_s__setValue : (idx = 0) Frame #2 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #2 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #2 is ready. -00T00:00:17.898Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 2 -00T00:00:18.014Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #3 -- +00T00:00:10.106Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 2 +00T00:00:10.222Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #3 -- abstract_port__vsync_s__setValue : (idx = 0) Frame #3 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #3 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #3 is ready. abstract_port__vsync_s__setValue : (idx = 0) Frame #3 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #3 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #3 is ready. -00T00:00:18.024Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 3 -00T00:00:18.140Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #4 -- +00T00:00:10.229Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 3 +00T00:00:10.345Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #4 -- abstract_port__vsync_s__setValue : (idx = 0) Frame #4 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #4 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #4 is ready. abstract_port__vsync_s__setValue : (idx = 0) Frame #4 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #4 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #4 is ready. -00T00:00:18.150Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 4 -00T00:00:18.155Z GENERIC(CRIT) :-- aframes->frame_id = 1 -- -00T00:00:18.165Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- -96 18177 [acamera] [INFO] Displaying image... -97 18183 [acamera] [INFO] Image displayed -00T00:00:18.189Z GENERIC(CRIT) :-- aframes->frame_id = 1 -- -00T00:00:18.199Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- -98 18211 [acamera] [ERROR] Input frame too big for inference! -00T00:00:18.235Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #5 -- +00T00:00:10.352Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 4 +00T00:00:10.358Z GENERIC(CRIT) :-- aframes->frame_id = 1 -- +00T00:00:10.366Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- +56 10374 [acamera] [INFO] Displaying image... +57 10379 [acamera] [INFO] Image displayed +00T00:00:10.384Z GENERIC(CRIT) :-- aframes->frame_id = 1 -- +00T00:00:10.392Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- +58 10400 [acamera] [ERROR] Input frame too big for inference! +00T00:00:10.422Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #5 -- abstract_port__vsync_s__setValue : (idx = 0) Frame #5 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #5 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #5 is ready. abstract_port__vsync_s__setValue : (idx = 0) Frame #5 is ready. abstract_port__vsync_s__setValue : (idx = 1) Frame #5 is ready. abstract_port__vsync_s__setValue : (idx = 2) Frame #5 is ready. -00T00:00:18.245Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 5 -00T00:00:18.252Z GENERIC(CRIT) :-- aframes->frame_id = 2 -- -00T00:00:18.262Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- -99 18274 [acamera] [INFO] Displaying image... -100 18280 [acamera] [INFO] Image displayed -00T00:00:18.286Z GENERIC(CRIT) :-- aframes->frame_id = 2 -- -00T00:00:18.296Z GENERIC(CRIT) :-- 192 X 192 @ 2 bytes per pixel -- -101 18308 [acamera] [INFO] Converting to Gray: 0x82f76000 -> 0x21224300 -INFO - Running inference on image at addr 0x21224300 -102 18340 [acamera] [INFO] Final results: -103 18346 [acamera] [INFO] Total number of inferences: 1 -104 18354 [acamera] [INFO] Detected faces: 3 -105 18360 [acamera] [INFO] 0) (0.994434) -> Detection box: {x=6,y=71,w=33,h=44} -106 18371 [acamera] [INFO] 1) (0.950913) -> Detection box: {x=108,y=71,w=13,h=21} -107 18383 [acamera] [INFO] 2) (0.884787) -> Detection box: {x=47,y=78,w=20,h=31} -108 18394 [acamera] [INFO] Complete recognition: Detected faces: 3 -109 18534 [ML_MQTT] [INFO] Attempting to publish (Detected faces: 3) to the MQTT topic /ml/inference. -110 18557 [MQTT Agent Task] [INFO] Publishing message to /ml/inference. -00T00:00:18.575Z GENERIC(CRIT) :-- CAMERA STREAM TRIGGER #6 -- -abstract_port__vsync_s__setValue : (idx = 0) Frame #6 is ready. -abstract_port__vsync_s__setValue : (idx = 1) Frame #6 is ready. -abstract_port__vsync_s__setValue : (idx = 2) Frame #6 is ready. -abstract_port__vsync_s__setValue : (idx = 0) Frame #6 is ready. -abstract_port__vsync_s__setValue : (idx = 1) Frame #6 is ready. -abstract_port__vsync_s__setValue : (idx = 2) Frame #6 is ready. -00T00:00:18.585Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 6 -00T00:00:18.588Z GENERIC(CRIT) :-- aframes->frame_id = 3 -- -00T00:00:18.598Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- -111 18610 [acamera] [INFO] Displaying image... -112 18616 [acamera] [INFO] Image displayed -00T00:00:18.622Z GENERIC(CRIT) :-- aframes->frame_id = 3 -- -00T00:00:18.633Z GENERIC(CRIT) :-- 192 X 192 @ 2 bytes per pixel -- -113 18644 [acamera] [INFO] Converting to Gray: 0x837e6000 -> 0x21224300 -INFO - Running inference on image at addr 0x21224300 -114 18676 [acamera] [INFO] Final results: -115 18682 [acamera] [INFO] Total number of inferences: 1 -116 18690 [acamera] [INFO] Detected faces: 4 -117 18696 [acamera] [INFO] 0) (0.996794) -> Detection box: {x=6,y=71,w=33,h=44} -118 18707 [acamera] [INFO] 1) (0.986066) -> Detection box: {x=108,y=71,w=13,h=21} -119 18719 [acamera] [INFO] 2) (0.958923) -> Detection box: {x=47,y=78,w=20,h=31} -120 18730 [acamera] [INFO] 3) (0.546118) -> Detection box: {x=170,y=91,w=16,h=21} -121 18741 [acamera] [INFO] Complete recognition: Detected faces: 4 +00T00:00:10.429Z GENERIC(CRIT) :[KeyMsg]: FS interrupt: 5 +00T00:00:10.438Z GENERIC(CRIT) :-- aframes->frame_id = 2 -- +00T00:00:10.446Z GENERIC(CRIT) :-- 576 X 576 @ 2 bytes per pixel -- +59 10454 [acamera] [INFO] Displaying image... +60 10459 [acamera] [INFO] Image displayed +00T00:00:10.464Z GENERIC(CRIT) :-- aframes->frame_id = 2 -- +00T00:00:10.471Z GENERIC(CRIT) :-- 192 X 192 @ 2 bytes per pixel -- +61 10480 [acamera] [INFO] Converting to Gray: 0x82f76000 -> 0x21286b00 +INFO - Running inference on image at addr 0x21286b00 +[warning ][main@0][4647 ns] TA0 is not enabled! +[warning ][main@0][4647 ns] TA1 is not enabled! +62 10506 [acamera] [INFO] Final results: +63 10511 [acamera] [INFO] Total number of inferences: 1 +64 10517 [acamera] [INFO] Detected faces: 2 +65 10521 [acamera] [INFO] 0) (0.999633) -> Detection box: {x=72,y=11,w=39,h=53} +66 10530 [acamera] [INFO] 1) (0.907045) -> Detection box: {x=32,y=73,w=38,h=58} +67 10538 [acamera] [INFO] Complete recognition: Detected faces: 2 ``` ## Observing MQTT connectivity @@ -367,7 +316,34 @@ Follow the instructions described in the [Firmware update with AWS](./aws_iot/aw ### Expected output ```log +[INF] Starting TF-M BL1_1 +[INF] Beginning provisioning +[INF] TP mode set complete, system will now reset. +[INF] Starting TF-M BL1_1 +[INF] Beginning provisioning +[INF] Waiting for CM provisioning bundle +[INF] Enabling secure provisioning mode, system will now reset. +[INF] Starting TF-M BL1_1 +[INF] Beginning provisioning +[INF] Waiting for CM provisioning bundle +[INF] Running CM provisioning bundle +[INF] Starting TF-M BL1_1 +[INF] Beginning provisioning +[INF] Waiting for DM provisioning bundle +[INF] Enabling secure provisioning mode, system will now reset. +[INF] Starting TF-M BL1_1 +[INF] Beginning provisioning +[INF] Waiting for DM provisioning bundle +[INF] Running DM provisioning bundle +[INF] Starting TF-M BL1_1 +[INF] Jumping to BL1_2 +[INF] Starting TF-M BL1_2 +[INF] Attempting to boot image 0 +[INF] BL2 image decrypted successfully +[INF] BL2 image validated successfully +[INF] Jumping to BL2 [INF] Starting bootloader +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot @@ -377,112 +353,141 @@ Follow the instructions described in the [Firmware update with AWS](./aws_iot/aw [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -Booting TF-M v2.1.1 -[Sec Thread] Secure image initializing! +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled Creating an empty ITS flash layout. Creating an empty PS flash layout. -[INF][Crypto] Provisioning entropy seed... complete. +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 1 0 [None] Write certificate... 2 0 [None] [INFO] Device key provisioning succeeded 3 0 [None] [INFO] OTA signing key provisioning succeeded 4 0 [None] [INFO] Signal task inference stop 5 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -6 41 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.10 -7 54 [ML_TASK] [INFO] ML Task start -8 59 [BLINK_TASK ] [INFO] Blink task started -9 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create -10 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 -11 1000 [IP-Task] vDHCP_RATimerReload: 250 -12 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -13 1260 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -14 1260 [IP-Task] [INFO] Network is up -15 1260 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 -16 1260 [IP-Task] vDHCP_RATimerReload: 8640000 -17 1291 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. -18 1307 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. -19 1323 [IP-Task] ipARP_REPLY from ac1433feip to ac143301ip end-point ac143301ip -20 6334 [MQTT Agent Task] DNS_ReadReply returns -11 -21 6341 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 -22 6352 [MQTT Agent Task] DNS[0xB324]: The answer to '.amazonaws.com' (52.208.143.40) will be stored -23 6371 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 -24 6388 [MQTT Agent Task] FreeRTOS_connect: 25748 to 34d08f28ip:8883 -25 6482 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 -26 8653 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. -27 8671 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. -28 9099 [MQTT Agent Task] [INFO] MQTT connection established with the broker. -29 9110 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. -30 9121 [MQTT Agent Task] [INFO] Session present: 0 -31 9128 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. -32 9137 [OTA Task ] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 -33 9149 [OTA Agent Task] [INFO] Current State=[RequestingJob], Event=[Start], New state=[RequestingJob] -34 9633 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//jobs/notify-next. -35 9653 [OTA Agent Task] [INFO] Subscribed to MQTT topic: $aws/things//jobs/notify-next -36 10383 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/$next/get. -37 10922 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -38 10934 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -39 10946 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -40 10961 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -41 10973 [MQTT Agent Task] [INFO] Received job message callback, size 1020. -42 10983 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/$next/get to broker. -43 11006 [OTA Agent Task] [WARN] OTA Timer handle NULL for Timerid=0, can't stop. -44 11017 [OTA Agent Task] [INFO] Current State=[WaitingForJob], Event=[RequestJobDocument], New state=[WaitingForJob] -45 11035 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobId: AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a] -46 11060 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.streamname: AFR_OTA-eac26517-1848-4705-8242-97bda52cab40] -47 11082 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.protocols: ["MQTT"]] -48 11100 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filepath: non_secure image] -49 11114 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filesize: 1141641] -50 11127 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[fileid: 0] -51 11138 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[certfile: 0] -52 11151 [OTA Agent Task] [INFO] Extracted parameter [ sig-sha256-rsa: LUOGFk3dx7VoXvS7tJl5MJObgHtbCJgZ... ] -53 11167 [OTA Agent Task] [INFO] Job document was accepted. Attempting to begin the update. -54 11180 [OTA Agent Task] [INFO] Job parsing success: OtaJobParseErr_t=OtaJobParseErrNone, Job name=AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a -55 11203 [OTA Agent Task] [INFO] Signal task inference stop -56 11253 [OTA Agent Task] [INFO] Setting OTA data interface. -57 11261 [OTA Agent Task] [INFO] Current State=[CreatingFile], Event=[ReceivedJobDocument], New state=[CreatingFile] -58 12464 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/data/cbor. -59 12490 [OTA Agent Task] [INFO] Current State=[RequestingFileBlock], Event=[CreateFile], New state=[RequestingFileBlock] -60 13214 [MQTT Agent Task] [INFO] Publishing message to $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor. -61 13399 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor to broker. -62 13428 [OTA Agent Task] [INFO] Published to MQTT topic to request the next block: topic=$aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor -63 13459 [OTA Agent Task] [INFO] Current State=[WaitingForFileBlock], Event=[RequestFileBlock], New state=[WaitingForFileBlock] -64 14010 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -65 14024 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -66 14036 [MQTT Agent Task] [INFO] Received data message callback, size 4120. -67 14047 [OTA Agent Task] [INFO] Received valid file block: Block index=0, Size=4096 -68 14059 [OTA Agent Task] [INFO] Number of blocks remaining: 278 +6 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +7 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +8 43 [OTA Task] [INFO] OTA over MQTT, firmware versions: +9 49 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +10 55 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.10 +11 62 [ML_TASK] [INFO] ML Task start +12 66 [BLINK_TASK ] [INFO] Blink task started +13 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create +14 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 +15 1000 [IP-Task] vDHCP_RATimerReload: 250 +16 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +17 1257 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +18 1257 [IP-Task] [INFO] Network is up +19 1257 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +20 1257 [IP-Task] vDHCP_RATimerReload: 6480000 +21 1281 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. +22 1293 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. +23 6304 [MQTT Agent Task] DNS_ReadReply returns -11 +24 6309 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 +25 6317 [MQTT Agent Task] DNS[0x4EBF]: The answer to '.amazonaws.com' (34.251.115.106) will be stored +26 6331 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 +27 6344 [MQTT Agent Task] FreeRTOS_connect: 32416 to 22fb736aip:8883 +28 6413 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 +29 8257 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. +30 8271 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. +31 8485 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. +32 8493 [MQTT Agent Task] [INFO] Session present: 0 +33 8498 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. +34 8505 [OTA Agent Task] [INFO] Requesting job document. +35 8513 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/start-next to broker. +36 8690 [MQTT Agent Task] [INFO] Received job message callback, size 1046. +37 8701 [OTA Agent Task] [INFO] Extracted parameter: [jobid: AFR_OTA-ota-test-update-id-ff61f445-de82-4d18-b0d7-e848797356fa] +38 8714 [OTA Agent Task] [INFO] Extracted parameter: [streamname: AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2] +39 8726 [OTA Agent Task] [INFO] Extracted parameter: [filepath: non_secure image] +40 8734 [OTA Agent Task] [INFO] Extracted parameter: [filesize: 564703] +41 8742 [OTA Agent Task] [INFO] Extracted parameter: [fileid: 0] +42 8749 [OTA Agent Task] [INFO] Extracted parameter: [certfile: 0] +43 8756 [OTA Agent Task] [INFO] Extracted parameter: [sig-sha256-rsa: NuNyhq1NrCPe6Mpd0eAmf605MbCYBW4obec...] +44 9677 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/data/json. +45 9722 [OTA Agent Task] [INFO] Received OTA job document. +46 9729 [OTA Agent Task] [INFO] Signal task inference stop +47 9735 [OTA Agent Task] [INFO] Requesting file block. +48 9741 [OTA Agent Task] [INFO] Starting the download. +49 10429 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/get/json to broker. +50 11173 [MQTT Agent Task] [INFO] Received data message callback, size 5493. +51 11181 [OTA Agent Task] [INFO] Received file block. +52 11189 [OTA Agent Task] [INFO] Downloaded block 0 of 138. +53 11196 [OTA Agent Task] [INFO] Requesting file block. +54 11933 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/get/json to broker. +55 12678 [MQTT Agent Task] [INFO] Received data message callback, size 5493. +56 12686 [OTA Agent Task] [INFO] Received file block. +57 12694 [OTA Agent Task] [INFO] Downloaded block 1 of 138. +58 12701 [OTA Agent Task] [INFO] Requesting file block. ... -3487 567949 [MQTT Agent Task] [INFO] Publishing message to $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor. -3488 568137 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor to broker. -3489 568166 [OTA Agent Task] [INFO] Published to MQTT topic to request the next block: topic=$aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor -3490 568198 [OTA Agent Task] [INFO] Current State=[WaitingForFileBlock], Event=[RequestFileBlock], New state=[WaitingForFileBlock] -3491 569141 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -3492 569156 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -3493 569168 [MQTT Agent Task] [INFO] Received data message callback, size 4122. -3494 569179 [OTA Agent Task] [INFO] Received valid file block: Block index=277, Size=4096 -3495 569192 [OTA Agent Task] [INFO] Number of blocks remaining: 1 -3496 569201 [OTA Agent Task] [INFO] OTA active state `6` from OTA Agent. -3497 569212 [OTA Agent Task] [INFO] Signal task inference stop -3498 569221 [OTA Agent Task] [INFO] Current State=[WaitingForFileBlock], Event=[ReceivedFileBlock], New state=[WaitingForFileBlock] -3499 569872 [OTA Task ] [INFO] Received: 278 Queued: 278 Processed: 278 Dropped: 0 -3500 569983 [MQTT Agent Task] [INFO] Publishing message to $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor. -3501 570169 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor to broker. -3502 570198 [OTA Agent Task] [INFO] Published to MQTT topic to request the next block: topic=$aws/things//streams/AFR_OTA-eac26517-1848-4705-8242-97bda52cab40/get/cbor -3503 570230 [OTA Agent Task] [INFO] Current State=[WaitingForFileBlock], Event=[RequestFileBlock], New state=[WaitingForFileBlock] -3504 571172 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -3505 571187 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -3506 571199 [MQTT Agent Task] [INFO] Received data message callback, size 2979. -3507 571210 [OTA Agent Task] [INFO] Received valid file block: Block index=278, Size=2953 -3508 571223 [OTA Agent Task] [INFO] Received final block of the update. -3509 571894 [OTA Agent Task] [INFO] Received entire update and validated the signature. -3510 572014 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a/update. -3511 573260 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -3512 573272 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -3513 573284 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -3514 573299 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -3515 573312 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/AFR_OTA-ota-test-update-id-9ba0432f-e481-4fde-b3e5-a45bcf076e7a/update to broker. -3516 573343 [OTA Agent Task] [INFO] Received OtaJobEventActivate callback from OTA Agent. +715 203443 [MQTT Agent Task] [INFO] Received data message callback, size 5495. +716 203451 [OTA Agent Task] [INFO] Received file block. +717 203459 [OTA Agent Task] [INFO] Downloaded block 133 of 138. +718 203466 [OTA Agent Task] [INFO] Requesting file block. +719 204203 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/get/json to broker. +720 204884 [MQTT Agent Task] [INFO] Received data message callback, size 5495. +721 204892 [OTA Agent Task] [INFO] Received file block. +722 204900 [OTA Agent Task] [INFO] Downloaded block 134 of 138. +723 204907 [OTA Agent Task] [INFO] Requesting file block. +724 205644 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/get/json to broker. +725 206332 [MQTT Agent Task] [INFO] Received data message callback, size 5495. +726 206340 [OTA Agent Task] [INFO] Received file block. +727 206348 [OTA Agent Task] [INFO] Downloaded block 135 of 138. +728 206355 [OTA Agent Task] [INFO] Requesting file block. +729 207092 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/get/json to broker. +730 207775 [MQTT Agent Task] [INFO] Received data message callback, size 5495. +731 207783 [OTA Agent Task] [INFO] Received file block. +732 207791 [OTA Agent Task] [INFO] Downloaded block 136 of 138. +733 207798 [OTA Agent Task] [INFO] Requesting file block. +734 208535 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-46bfd071-34ab-4150-880e-0cc15be203d2/get/json to broker. +735 209013 [MQTT Agent Task] [INFO] Received data message callback, size 4767. +736 209022 [OTA Agent Task] [INFO] Received file block. +737 209029 [OTA Agent Task] [INFO] Downloaded block 137 of 138. +738 209036 [OTA Agent Task] [INFO] Closing file. +739 209304 [OTA Agent Task] [INFO] Attempting to activate image. + +... + +[INF] Starting TF-M BL1_1 +[INF] Jumping to BL1_2 +[INF] Starting TF-M BL1_2 +[INF] Attempting to boot image 0 +[INF] BL2 image decrypted successfully +[INF] BL2 image validated successfully +[INF] Jumping to BL2 +[INF] Starting bootloader +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys +[INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 +[INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 +[INF] Boot source: primary slot +[INF] Image index: 1, Swap type: test +[INF] Starting swap using scratch algorithm. +[INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 +[INF] Scratch: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3 +[INF] Boot source: primary slot +[INF] Image index: 0, Swap type: none +[INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 +[INF] Jumping to the first image slot +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. +0 0 [None] [INFO] PSA Framework version is: 257 +1 0 [None] [INFO] Signal task inference stop +2 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip +3 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +4 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +5 27 [OTA Task] [INFO] OTA over MQTT, firmware versions: +6 33 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +7 40 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.20 ``` diff --git a/docs/applications/speech_recognition.md b/docs/applications/speech_recognition.md index c2a76a39..d3f8cee5 100644 --- a/docs/applications/speech_recognition.md +++ b/docs/applications/speech_recognition.md @@ -67,98 +67,91 @@ To run the Speech-Recognition example, run the following command: ```log [INF] Starting bootloader -[INF] Beginning provisioning -[INF] Waiting for provisioning bundle -[INF] Running provisioning bundle +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot -[INF] Image index: 1, Swap type: none +[INF] Image index: 1, Swap type: test +[INF] Starting swap using scratch algorithm. [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 -[INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 +[INF] Scratch: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3 [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[Sec Thread] Secure image initializing! -Booting TF-M v2.1.1 -Creating an empty ITS flash layout. -Creating an empty PS flash layout. -[INF][Crypto] Provisioning entropy seed... complete. +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 -1 0 [None] Write certificate... -2 0 [None] [INFO] Device key provisioning succeeded -3 0 [None] [INFO] OTA signing key provisioning succeeded -4 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -5 34 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.10 -6 47 [DSP_TASK] [INFO] DSP start -7 52 [BLINK_TASK ] [INFO] Blink task started -8 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create -9 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 -10 1000 [IP-Task] vDHCP_RATimerReload: 250 -11 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -12 1260 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -13 1260 [IP-Task] [INFO] Network is up -14 1260 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 -15 1260 [IP-Task] vDHCP_RATimerReload: 8640000 -16 1291 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. -17 1307 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. -18 1322 [IP-Task] ipARP_REPLY from ac1433feip to ac143301ip end-point ac143301ip -19 6333 [MQTT Agent Task] DNS_ReadReply returns -11 -20 6340 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 -21 6356 [MQTT Agent Task] DNS[0x5946]: The answer to '.amazonaws.com' (52.208.184.196) will be stored -22 6375 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 -23 6392 [MQTT Agent Task] FreeRTOS_connect: 45227 to 34d0b8c4ip:8883 -24 6505 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 -25 8791 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. -26 8808 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. -27 9243 [MQTT Agent Task] [INFO] MQTT connection established with the broker. -28 9254 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. -29 9265 [MQTT Agent Task] [INFO] Session present: 0 -30 9272 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. -31 9281 [OTA Task ] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 -32 9292 [OTA Agent Task] [WARN] Index: 0. OTA event id: 0 -33 9300 [OTA Agent Task] [WARN] Index: 1. OTA event id: 2 -36 10857 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//jobs/notify-next. -37 10876 [OTA Agent Task] [INFO] Subscribed to MQTT topic: $aws/things//jobs/notify-next -40 11844 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -41 11859 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -42 11870 [MQTT Agent Task] [INFO] Received incoming publish message Task 0 publishing message 0 -44 12634 [MQTT Agent Task] [INFO] Publishing message to $aws/things//jobs/$next/get. -45 13021 [MQTT Agent Task] [INFO] Ack packet deserialized with result: MQTTSuccess. -46 13032 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -47 13044 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/$next/get to broker. -48 13066 [OTA Agent Task] [WARN] OTA Timer handle NULL for Timerid=0, can't stop. -49 13121 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -50 13135 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -51 13147 [MQTT Agent Task] [INFO] Received job message callback, size 1016. -52 13157 [OTA Agent Task] [WARN] Index: 3. OTA event id: 3 -53 13166 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobId: AFR_OTA-ota-test-update-id-6c887a31-0f18-42b0-977c-aae255199d36] -54 13189 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.streamname: AFR_OTA-c35caad0-f43b-4043-a7ca-5c60e27616d0] -55 13211 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.protocols: ["MQTT"]] -56 13228 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filepath: non_secure image] -57 13242 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filesize: 3081945] -58 13254 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[fileid: 0] -59 13265 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[certfile: 0] -60 13277 [OTA Agent Task] [INFO] Extracted parameter [ sig-sha256-rsa: ORLHoYQfNvBa0Z+xLLi2IDSwTdmPRHNQ... ] -61 13293 [OTA Agent Task] [INFO] Job document was accepted. Attempting to begin the update. -62 13306 [OTA Agent Task] [INFO] Job parsing success: OtaJobParseErr_t=OtaJobParseErrNone, Job name=AFR_OTA-ota-test-update-id-6c887a31-0f18-42b0-977c-aae255199d36 -63 13328 [OTA Agent Task] [WARN] Received an unhandled callback event from OTA Agent, event = 6 -64 13342 [OTA Agent Task] [INFO] Signal task inference start -65 13350 [OTA Agent Task] [INFO] DSP task start -66 13357 [ML_TASK] [INFO] Initial start of audio processing -67 13367 [ML_TASK] [INFO] Ethos-U55 device initialised -68 13374 [DSP_TASK] [INFO] Init speex -69 13381 [ML_TASK] [INFO] Ethos-U version info: -70 13389 [ML_TASK] [INFO] Arch: v1.1.0 -71 13397 [ML_TASK] [INFO] Driver: v0.16.0 -72 13405 [ML_TASK] [INFO] MACs/cc: 256 -73 13413 [ML_TASK] [INFO] Cmd stream: v0 +1 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip +2 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +3 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +4 23 [OTA Task] [INFO] OTA over MQTT, firmware versions: +5 29 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +6 35 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.20 +7 42 [ML_TASK] [INFO] ML Task start +8 46 [DSP_TASK] [INFO] DSP Task start +9 50 [BLINK_TASK ] [INFO] Blink task started +10 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create +11 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 +12 1000 [IP-Task] vDHCP_RATimerReload: 250 +13 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +14 1257 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +15 1257 [IP-Task] [INFO] Network is up +16 1257 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +17 1257 [IP-Task] vDHCP_RATimerReload: 6480000 +18 1281 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. +19 1293 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. +20 6304 [MQTT Agent Task] DNS_ReadReply returns -11 +21 6309 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 +22 6317 [MQTT Agent Task] DNS[0xAFCC]: The answer to '.amazonaws.com' (34.255.26.134) will be stored +23 6330 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 +24 6344 [MQTT Agent Task] FreeRTOS_connect: 55808 to 22ff1a86ip:8883 +25 6417 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 +26 8242 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. +27 8256 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. +28 8444 [MQTT Agent Task] [INFO] Successfully connected to the MQTT broker. +29 8452 [MQTT Agent Task] [INFO] Session present: 0 +30 8458 [MQTT Agent Task] [INFO] Starting a clean MQTT Session. +31 8464 [OTA Agent Task] [INFO] Requesting job document. +32 8472 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/start-next to broker. +33 8624 [MQTT Agent Task] [INFO] Received job message callback, size 1080. +34 8634 [OTA Agent Task] [INFO] Extracted parameter: [jobid: AFR_OTA-ota-test-update-id-ca10de26-7243-4061-bba3-c4e850c328eb] +35 8647 [OTA Agent Task] [INFO] Extracted parameter: [streamname: AFR_OTA-1f553cde-b6fa-4882-8c27-b4212683a29e] +36 8659 [OTA Agent Task] [INFO] Extracted parameter: [filepath: non_secure image] +37 8668 [OTA Agent Task] [INFO] Extracted parameter: [filesize: 592447] +38 8675 [OTA Agent Task] [INFO] Extracted parameter: [fileid: 0] +39 8682 [OTA Agent Task] [INFO] Extracted parameter: [certfile: 0] +40 8689 [OTA Agent Task] [INFO] Extracted parameter: [sig-sha256-rsa: XmTvGHbk5N6UqdU1a0ZxOyxWP...] +41 8750 [OTA Agent Task] [INFO] Application version of the new image is not higher than the current image: New images are expected to have a higher version number. +42 9384 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//jobs/AFR_OTA-ota-test-update-id-ca10de26-7243-4061-bba3-c4e850c328eb/update to broker. +43 9407 [OTA Agent Task] [INFO] No OTA job available. +44 9413 [OTA Agent Task] [INFO] Signal task inference start +45 9419 [OTA Agent Task] [INFO] DSP task start +46 9425 [ML_TASK] [INFO] Initial start of audio processing +INFO -2 [DSP_TASK] [INFO] Initial start of aud47 9432 [DSP_TASK] [INFO] Initial start of audio processing +INFO - E[DSP_TASK] [INFO] Init spe48 9443 [DSP_TASK] [INFO] Init speex +INFO - Ethos-U version info: +INFO - Arch: v1.1.0 +INFO - Driver: v0.16.0 +INFO - MACs/cc: 256 +INFO - Cmd stream: v0 +49 9466 [ML_TASK] [INFO] Ethos-U55 device initialised +50 9472 [ML_TASK] [INFO] Ethos-U version info: +51 9478 [ML_TASK] [INFO] Arch: v1.1.0 +52 9483 [ML_TASK] [INFO] Driver: v0.16.0 +53 9488 [ML_TASK] [INFO] MACs/cc: 256 +54 9493 [ML_TASK] [INFO] Cmd stream: v0 INFO - Added ethos-u support to op resolver -INFO - Creating allocask] [INFO] Setting OTA data interface74 13443 [OTA Agent Task] [INFO] Setting OTA data interface. -INFO - A [OTA Agent Task] 75 13458 [OTA Agent Task] [INFO] Signal task inference start -INFO - 1 [OTA Agent Task] [IN76 13471 [OTA Agent Task] [INFO] DSP task start -INFO - [OTA Agent Task] [W77 13482 [OTA Agent Task] [WARN] Index: 5. OTA event id: 4 +INFO - Creating allocator using tensor arena at 0x602633b0 +INFO - Allocating tensors +INFO - Model INPUT tensors: +INFO - tensor type is INT8 INFO - tensor occupies 11544 bytes with dimensions INFO - 0: 1 INFO - 1: 296 @@ -179,28 +172,24 @@ INFO - ZeroPoint[0] = 5 INFO - Activation buffer (a.k.a tensor arena) size used: 436092 INFO - Number of operators: 1 INFO - Operator 0: ethos-u -78 13628 [ML_TASK] [INFO] *** ML interface initialised -79 14072 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//streams/AFR_OTA-c35caad0-f43b-4043-a7ca-5c60e27616d0/data/cbor. -80 14099 [OTA Agent Task] [WARN] Index: 7. OTA event id: 5 -81 14240 [DSP_TASK] [INFO] ML Processing -82 14246 [ML_TASK] [INFO] Inference 1/2 -83 14309 [ML_TASK] [INFO] Start running inference on an audio clip in local memory -[warning ][main@0][3706 ns] TA0 is not enabled! -[warning ][main@0][3706 ns] TA1 is not enabled! -84 14342 [ML_TASK] [INFO] Inference done -85 14490 [DSP_TASK] [INFO] ML Processing -86 14648 [ML_TASK] [INFO] Inference 2/2 -87 14768 [ML_TASK] [INFO] Start running inference on an audio clip in local memory -88 14801 [ML_TASK] [INFO] Inference done -89 14807 [ML_TASK] [INFO] Final results: -90 14814 [ML_TASK] [INFO] Total number of inferences: 2 -91 14822 [MQTT Agent Task] [INFO] Publishing message to $aws/things//streams/AFR_OTA-c35caad0-f43b-4043-a7ca-5c60e27616d0/get/cbor. -92 14848 [ML_TASK] [INFO] For timestamp: 0.100000 (inference #: 0); label: turn down the temperature in the bedroo -93 14865 [ML_TASK] [INFO] For timestamp: 0.100000 (inference #: 1); label: om -94 14877 [ML_TASK] [INFO] Complete recognition: turn down the temperature in the bedroom -95 14890 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-c35caad0-f43b-4043-a7ca-5c60e27616d0/get/cbor to broker. -96 14919 [ML_MQTT] [INFO] Attempting to publish (turn down the temperature in the bedroom) to the MQTT topic /ml/inference. -97 14953 [DSP_TASK] [INFO] ML Processing +55 9582 [ML_TASK] [INFO] *** ML interface initialised +56 10138 [DSP_TASK] [INFO] ML Processing +57 10143 [ML_TASK] [INFO] Inference 1/2 +58 10201 [ML_TASK] [INFO] Start running inference on an audio clip in local memory +[warning ][main@0][4655 ns] TA0 is not enabled! +[warning ][main@0][4655 ns] TA1 is not enabled! +59 10226 [ML_TASK] [INFO] Inference done +60 10383 [DSP_TASK] [INFO] ML Processing +61 10530 [ML_TASK] [INFO] Inference 2/2 +62 10643 [ML_TASK] [INFO] Start running inference on an audio clip in local memory +63 10669 [ML_TASK] [INFO] Inference done +64 10674 [ML_TASK] [INFO] Final results: +65 10679 [ML_TASK] [INFO] Total number of inferences: 2 +66 10685 [ML_TASK] [INFO] For timestamp: 0.100000 (inference #: 0); label: turn down the temperature in the bedroo +67 10698 [ML_TASK] [INFO] For timestamp: 0.100000 (inference #: 1); label: om +68 10707 [ML_TASK] [INFO] Complete recognition: turn down the temperature in the bedroom +69 10718 [ML_MQTT] [INFO] Attempting to publish (turn down the temperature in the bedroom) to the MQTT topic /ml/inference. +70 10762 [DSP_TASK] [INFO] ML Processing ``` ## Observing MQTT connectivity @@ -218,6 +207,7 @@ Follow the instructions described in the [Firmware update with AWS](./aws_iot/aw [INF] Beginning provisioning [INF] Waiting for provisioning bundle [INF] Running provisioning bundle +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot @@ -227,85 +217,107 @@ Follow the instructions described in the [Firmware update with AWS](./aws_iot/aw [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[Sec Thread] Secure image initializing! -Booting TF-M v2.1.1 +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled Creating an empty ITS flash layout. Creating an empty PS flash layout. -[INF][Crypto] Provisioning entropy seed... complete. +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 1 0 [None] Write certificate... 2 0 [None] [INFO] Device key provisioning succeeded 3 0 [None] [INFO] OTA signing key provisioning succeeded 4 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -5 34 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.10 -6 47 [DSP_TASK] [INFO] DSP start -7 52 [BLINK_TASK ] [INFO] Blink task started -8 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create -9 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 -10 1000 [IP-Task] vDHCP_RATimerReload: 250 -11 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -12 1260 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 -13 1260 [IP-Task] [INFO] Network is up -14 1260 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 -15 1260 [IP-Task] vDHCP_RATimerReload: 8640000 -16 1291 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. -17 1307 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. -18 1322 [IP-Task] ipARP_REPLY from ac1433feip to ac143301ip end-point ac143301ip -19 6333 [MQTT Agent Task] DNS_ReadReply returns -11 -20 6340 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 -21 6356 [MQTT Agent Task] DNS[0x5946]: The answer to '.amazonaws.com' (52.208.184.196) will be stored -22 6375 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 -23 6392 [MQTT Agent Task] FreeRTOS_connect: 45227 to 34d0b8c4ip:8883 -24 6505 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 -25 8791 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. -26 8808 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. +5 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +6 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +7 38 [OTA Task] [INFO] OTA over MQTT, firmware versions: +8 44 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +9 50 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.10 +10 57 [ML_TASK] [INFO] ML Task start +11 61 [DSP_TASK] [INFO] DSP Task start +12 66 [BLINK_TASK ] [INFO] Blink task started +13 1000 [IP-Task] DHCP-socket[44-21]: DHCP Socket Create +14 1000 [IP-Task] prvCreateDHCPSocket[44-21]: open, user count 1 +15 1000 [IP-Task] vDHCP_RATimerReload: 250 +16 1250 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +17 1257 [IP-Task] vDHCPProcess: offer ac143301ip for MAC address 44-21 +18 1257 [IP-Task] [INFO] Network is up +19 1257 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +20 1257 [IP-Task] vDHCP_RATimerReload: 6480000 +21 1281 [MQTT Agent Task] [INFO] Creating a TLS connection to .amazonaws.com:8883. +22 1293 [MQTT Agent Task] [INFO] Resolving host name: .amazonaws.com. +23 6304 [MQTT Agent Task] DNS_ReadReply returns -11 +24 6309 [MQTT Agent Task] prvIncreaseDNS4Index: from 0 to 0 +25 6317 [MQTT Agent Task] DNS[0xBDBD]: The answer to '.amazonaws.com' (54.77.52.39) will be stored +26 6330 [MQTT Agent Task] [INFO] Initiating TCP connection with host: .amazonaws.com:8883 +27 6344 [MQTT Agent Task] FreeRTOS_connect: 13805 to 364d3427ip:8883 +28 6413 [MQTT Agent Task] [INFO] Initiating TLS handshake with host: .amazonaws.com:8883 +29 8035 [MQTT Agent Task] [INFO] Successfully created a TLS connection to .amazonaws.com:8883. +30 8049 [MQTT Agent Task] [INFO] Creating an MQTT connection to the broker. ... -49 13121 [MQTT Agent Task] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. -50 13135 [MQTT Agent Task] [INFO] State record updated. New state=MQTTPublishDone. -51 13147 [MQTT Agent Task] [INFO] Received job message callback, size 1016. -52 13157 [OTA Agent Task] [WARN] Index: 3. OTA event id: 3 -53 13166 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobId: AFR_OTA-ota-test-update-id-6c887a31-0f18-42b0-977c-aae255199d36] -54 13189 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.streamname: AFR_OTA-c35caad0-f43b-4043-a7ca-5c60e27616d0] -55 13211 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[execution.jobDocument.afr_ota.protocols: ["MQTT"]] -56 13228 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filepath: non_secure image] -57 13242 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[filesize: 3081945] -58 13254 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[fileid: 0] -59 13265 [OTA Agent Task] [INFO] Extracted parameter: [key: value]=[certfile: 0] -60 13277 [OTA Agent Task] [INFO] Extracted parameter [ sig-sha256-rsa: ORLHoYQfNvBa0Z+xLLi2IDSwTdmPRHNQ... ] -61 13293 [OTA Agent Task] [INFO] Job document was accepted. Attempting to begin the update. +36 8436 [MQTT Agent Task] [INFO] Received job message callback, size 1046. +37 8447 [OTA Agent Task] [INFO] Extracted parameter: [jobid: AFR_OTA-ota-test-update-id-ca10de26-7243-4061-bba3-c4e850c328eb] +38 8460 [OTA Agent Task] [INFO] Extracted parameter: [streamname: AFR_OTA-1f553cde-b6fa-4882-8c27-b4212683a29e] +39 8472 [OTA Agent Task] [INFO] Extracted parameter: [filepath: non_secure image] +40 8481 [OTA Agent Task] [INFO] Extracted parameter: [filesize: 592447] +41 8488 [OTA Agent Task] [INFO] Extracted parameter: [fileid: 0] +42 8495 [OTA Agent Task] [INFO] Extracted parameter: [certfile: 0] +43 8502 [OTA Agent Task] [INFO] Extracted parameter: [sig-sha256-rsa: XmTvGHbk5N6UqdU1a0ZxOyxWP...] +44 9398 [OTA Agent Task] [INFO] Subscribed to topic $aws/things//streams/AFR_OTA-1f553cde-b6fa-4882-8c27-b4212683a29e/data/json. +45 9444 [OTA Agent Task] [INFO] Received OTA job document. +46 9450 [OTA Agent Task] [INFO] Signal task inference stop +47 9456 [OTA Agent Task] [INFO] DSP task stop +48 9461 [OTA Agent Task] [INFO] Requesting file block. +49 9467 [OTA Agent Task] [INFO] Starting the download. ... -8740 1522485 [MQTT Agent Task] [INFO] Received incoming publish message Task 0 publishing message 255 -8742 1522520 [OTA Agent Task] [WARN] Index: 9. OTA event id: 6 -8744 1522554 [OTA Agent Task] [INFO] Received final block of the update. -8745 1524214 [OTA Agent Task] [INFO] Received entire update and validated the signature. +766 217715 [MQTT Agent Task] [INFO] Received data message callback, size 5495. +767 217723 [OTA Agent Task] [INFO] Received file block. +768 217731 [OTA Agent Task] [INFO] Downloaded block 143 of 145. +769 217738 [OTA Agent Task] [INFO] Requesting file block. +770 218475 [OTA Agent Task] [INFO] Sent PUBLISH packet to broker $aws/things//streams/AFR_OTA-1f553cde-b6fa-4882-8c27-b4212683a29e/get/json to broker. +771 218853 [MQTT Agent Task] [INFO] Received data message callback, size 3531. +772 218861 [OTA Agent Task] [INFO] Received file block. +773 218868 [OTA Agent Task] [INFO] Downloaded block 144 of 145. +774 218875 [OTA Agent Task] [INFO] Closing file. +775 219155 [OTA Agent Task] [INFO] Attempting to activate image. ... -8752 1525595 [OTA Agent Task] [INFO] Received OtaJobEventActivate callback from OTA Agent. [INF] Starting bootloader +[INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 [INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 [INF] Boot source: primary slot [INF] Image index: 1, Swap type: test [INF] Starting swap using scratch algorithm. [INF] Primary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 -[INF] Scratch: magic=bad, swap_type=0x1, copy_done=0x2, image_ok=0x2 +[INF] Scratch: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3 [INF] Boot source: primary slot [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x0 +[INF] Image version: v2.2.0 [INF] Jumping to the first image slot -[Sec Thread] Secure image initializing! -Booting TF-M v2.1.1 -[INF][Crypto] Provisioning entropy seed... complete. +Booting TF-M v2.2.0+gdd2b7de +[Sec Thread] Secure image initializing! +TF-M Float ABI: Hard +Lazy stacking enabled +[INF][PS] Encryption alg: 0x5500200 +[INF][Crypto] Provision entropy seed... +[INF][Crypto] Provision entropy seed... complete. 0 0 [None] [INFO] PSA Framework version is: 257 -1 0 [None] Write certificate... -2 0 [None] [INFO] Device key provisioning succeeded -3 0 [None] [INFO] OTA signing key provisioning succeeded -4 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip -5 34 [OTA Task ] [INFO] OTA over MQTT, Application version from appFirmwareVersion 0.0.20 +1 0 [None] FreeRTOS_AddEndPoint: MAC: 44-21 IPv4: c0a80069ip +2 0 [IP-Task] vIPSetDHCP_RATimerEnableState: Off +3 0 [IP-Task] prvCloseDHCPSocket[44-21]: closed, user count 0 +4 23 [OTA Task] [INFO] OTA over MQTT, firmware versions: +5 29 [OTA Task] [INFO] Secure Component (ID 0) version=2.2.0 +6 35 [OTA Task] [INFO] Non-Secure Component (ID 1) version=0.0.20 ``` From 70cf09c92395102c2fb3efce2e6d69947103d877 Mon Sep 17 00:00:00 2001 From: Ahmed Ismail Date: Thu, 10 Apr 2025 11:10:41 +0100 Subject: [PATCH 5/5] devcontainer: Add some fixes and updates This commit adds the following: * Add the needed python packages for the GDB debugger to work. * Update the GUI option to match the one in `tools/scripts/run.sh`. Signed-off-by: Ahmed Ismail --- .devcontainer/Dockerfile | 5 +++++ .vscode/tasks.json | 16 ++++++++-------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index caf4e012..f10909ad 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -93,6 +93,11 @@ RUN pip3 install \ # This is needed to define where the libclang shared object is located ENV LD_LIBRARY_PATH="/usr/lib/llvm-14/lib:${LD_LIBRARY_PATH}" +# This is needed for the GDB debugger to work +RUN sudo add-apt-repository -y ppa:deadsnakes/ppa && \ + sudo apt-get update && \ + sudo apt-get -y install python3.8 libpython3.8 libpython3.8-dev + # Create the user RUN groupadd --gid $USER_GID $USERNAME \ && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \ diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 3281cce8..a0f011a3 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -1,4 +1,4 @@ -// Copyright 2021-2024 Arm Limited and/or its affiliates +// Copyright 2021-2025 Arm Limited and/or its affiliates // // SPDX-License-Identifier: MIT @@ -40,7 +40,7 @@ "${input:FRITarget}", "${input:FRICameraFramesPath}", "${input:FRIBuildDirectory}", - "${input:FRIDisplay}" + "${input:FRIHdLcdGui}" ], "options": { "cwd": "${workspaceFolder}" @@ -65,7 +65,7 @@ "${input:FRIBuildDirectory}", "${input:FRICameraFramesPath}", "${input:FRIGdbDebuggerPlugin}", - "${input:FRIDisplay}" + "${input:FRIHdLcdGui}" ], "options": { "cwd": "${workspaceFolder}" @@ -161,13 +161,13 @@ }, { "type": "pickString", - "id": "FRIDisplay", - "description": "Is display (GUI) available?", + "id": "FRIHdLcdGui", + "description": "Is HDLCD GUI available?", "options": [ - "-Dtrue", - "-Dfalse" + "-Gtrue", + "-Gfalse" ], - "default": "-Dfalse" + "default": "-Gfalse" }, ] }