Skip to content

Commit df494cd

Browse files
david-hazi-armaggarg
authored andcommitted
ota-pal: Fix Image version getter and NS versioning
The image version using the following naming: major.minor.patch.build Patch actually is the image header's revision. Signed-off-by: Dávid Házi <[email protected]>
1 parent 0661307 commit df494cd

File tree

8 files changed

+15
-15
lines changed

8 files changed

+15
-15
lines changed

applications/freertos_iot_libraries_tests/TfmInitialCache.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "MCUBOOT_IMAGE_NUMBER" FORCE)
1111
set(DEFAULT_MCUBOOT_FLASH_MAP ON CACHE BOOL "DEFAULT_MCUBOOT_FLASH_MAP" FORCE)
1212
set(MCUBOOT_DATA_SHARING ON CACHE BOOL "MCUBOOT_DATA_SHARING" FORCE)
1313
set(MCUBOOT_UPGRADE_STRATEGY "SWAP_USING_SCRATCH" CACHE STRING "MCUBOOT_UPGRADE_STRATEGY" FORCE)
14-
set(MCUBOOT_IMAGE_VERSION_NS "0.0.1+10" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
14+
set(MCUBOOT_IMAGE_VERSION_NS "0.0.10+0" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
1515
set(PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT ON CACHE BOOL "PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT" FORCE)
1616
set(TFM_PARTITION_FIRMWARE_UPDATE ON CACHE BOOL "TFM_PARTITION_FIRMWARE_UPDATE" FORCE)

applications/keyword_detection/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,12 @@ set(AWS_OTA_SIGNATURE_TYPE "RSA-3072" CACHE STRING "Supported algorithms for si
3131
# due to same firmware version.
3232
# We will therefore change the build version from TF-M.
3333
# MCUBOOT_IMAGE_VERSION_NS is passed to the TF-M build in TfmInitialCache.cmake
34-
set(MCUBOOT_IMAGE_VERSION_NS_UPDATE "0.0.1+20")
34+
set(MCUBOOT_IMAGE_VERSION_NS_UPDATE "0.0.20+0")
3535

3636
# This variable is only defined in case of GNU toolchain as it is currently the only toolchain
3737
# that supports the ML Model component OTA update feature where this variable is needed.
3838
if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
39-
set(MCUBOOT_IMAGE_VERSION_NS_ML_MODEL_UPDATE "0.0.1+42")
39+
set(MCUBOOT_IMAGE_VERSION_NS_ML_MODEL_UPDATE "0.0.42+0")
4040
endif()
4141

4242
if (${ML_INFERENCE_ENGINE} STREQUAL "ETHOS")

applications/keyword_detection/TfmInitialCache.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ include(${ROOT}/cmake/TfmInitialCacheCommon.cmake)
77
set(TFM_MBEDCRYPTO_CONFIG_CLIENT_PATH "${ROOT}/applications/keyword_detection/configs/mbedtls_config/aws_mbedtls_config.h" CACHE FILEPATH "TFM_MBEDCRYPTO_CONFIG_CLIENT_PATH" FORCE)
88
set(PROJECT_CONFIG_HEADER_FILE ${ROOT}/applications/keyword_detection/configs/tfm_config/project_config.h CACHE FILEPATH "PROJECT_CONFIG_HEADER_FILE" FORCE)
99
set(MCUBOOT_UPGRADE_STRATEGY "SWAP_USING_SCRATCH" CACHE STRING "MCUBOOT_UPGRADE_STRATEGY" FORCE)
10-
set(MCUBOOT_IMAGE_VERSION_NS "0.0.1+10" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
10+
set(MCUBOOT_IMAGE_VERSION_NS "0.0.10+0" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
1111
set(CONFIG_TFM_HALT_ON_CORE_PANIC ON CACHE BOOL "CONFIG_TFM_HALT_ON_CORE_PANIC" FORCE)
1212
set(MCUBOOT_DATA_SHARING ON CACHE BOOL "MCUBOOT_DATA_SHARING" FORCE)
1313
set(PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT ON CACHE BOOL "PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT" FORCE)
@@ -19,7 +19,7 @@ set(CONFIG_TFM_ENABLE_MVE_FP ON CACHE STRING "CONFIG_TFM_ENABLE_MVE_FP" FORCE)
1919
# These variables are only defined in case of GNU toolchain as it is currently the only toolchain
2020
# that supports the ML Model component OTA update feature where these variables are needed.
2121
if (${TOOLCHAIN} STREQUAL "GNU")
22-
set(MCUBOOT_IMAGE_VERSION_NS_ML_MODEL "0.0.1+11" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS_ML_MODEL" FORCE)
22+
set(MCUBOOT_IMAGE_VERSION_NS_ML_MODEL "0.0.11+0" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS_ML_MODEL" FORCE)
2323
set(MCUBOOT_NS_ML_MODEL_IMAGE_FLASH_AREA_NUM "1_0" CACHE STRING "MCUBOOT_NS_ML_MODEL_IMAGE_FLASH_AREA_NUM" FORCE)
2424
set(MCUBOOT_SECURITY_COUNTER_NS_ML_MODEL 1 CACHE STRING "MCUBOOT_SECURITY_COUNTER_NS_ML_MODEL" FORCE)
2525
set(MCUBOOT_IMAGE_NUMBER 3 CACHE STRING "MCUBOOT_IMAGE_NUMBER" FORCE)

applications/object_detection/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ set(AWS_OTA_SIGNATURE_TYPE "RSA-3072" CACHE STRING "Supported algorithms for si
2525
# due to same firmware version.
2626
# We will therefore change the build version from TF-M.
2727
# MCUBOOT_IMAGE_VERSION_NS is passed to the TF-M build in TfmInitialCache.cmake
28-
set(MCUBOOT_IMAGE_VERSION_NS_UPDATE "0.0.1+20")
28+
set(MCUBOOT_IMAGE_VERSION_NS_UPDATE "0.0.20+0")
2929

3030
if (${ML_INFERENCE_ENGINE} STREQUAL "ETHOS")
3131
set(ETHOS_U_NPU_ENABLED ON)

applications/object_detection/TfmInitialCache.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ set(PROJECT_CONFIG_HEADER_FILE ${ROOT}/applications/object_detection/configs/tfm
99
set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "MCUBOOT_IMAGE_NUMBER" FORCE)
1010
set(DEFAULT_MCUBOOT_FLASH_MAP ON CACHE BOOL "DEFAULT_MCUBOOT_FLASH_MAP" FORCE)
1111
set(MCUBOOT_UPGRADE_STRATEGY "SWAP_USING_SCRATCH" CACHE STRING "MCUBOOT_UPGRADE_STRATEGY" FORCE)
12-
set(MCUBOOT_IMAGE_VERSION_NS "0.0.1+10" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
12+
set(MCUBOOT_IMAGE_VERSION_NS "0.0.10+0" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
1313
set(CONFIG_TFM_HALT_ON_CORE_PANIC ON CACHE BOOL "CONFIG_TFM_HALT_ON_CORE_PANIC" FORCE)
1414
set(MCUBOOT_DATA_SHARING ON CACHE BOOL "MCUBOOT_DATA_SHARING" FORCE)
1515
set(PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT ON CACHE BOOL "PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT" FORCE)

applications/speech_recognition/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ set(AWS_OTA_SIGNATURE_TYPE "RSA-3072" CACHE STRING "Supported algorithms for si
2424
# Because of this, if only PATCH version is changed then the OTA will be rejected
2525
# due to same firmware version.
2626
# We will therefore change the build version from TF-M.
27-
set(MCUBOOT_IMAGE_VERSION_NS_UPDATE "0.0.1+20")
27+
set(MCUBOOT_IMAGE_VERSION_NS_UPDATE "0.0.20+0")
2828

2929
if (${ML_INFERENCE_ENGINE} STREQUAL "ETHOS")
3030
set(ETHOS_U_NPU_ENABLED ON)

applications/speech_recognition/TfmInitialCache.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ set(PROJECT_CONFIG_HEADER_FILE ${ROOT}/applications/speech_recognition/configs/t
1010
set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "MCUBOOT_IMAGE_NUMBER" FORCE)
1111
set(DEFAULT_MCUBOOT_FLASH_MAP ON CACHE BOOL "DEFAULT_MCUBOOT_FLASH_MAP" FORCE)
1212
set(MCUBOOT_UPGRADE_STRATEGY "SWAP_USING_SCRATCH" CACHE STRING "MCUBOOT_UPGRADE_STRATEGY" FORCE)
13-
set(MCUBOOT_IMAGE_VERSION_NS "0.0.1+10" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
13+
set(MCUBOOT_IMAGE_VERSION_NS "0.0.10+0" CACHE STRING "MCUBOOT_IMAGE_VERSION_NS" FORCE)
1414
set(CONFIG_TFM_HALT_ON_CORE_PANIC ON CACHE BOOL "CONFIG_TFM_HALT_ON_CORE_PANIC" FORCE)
1515
set(MCUBOOT_DATA_SHARING ON CACHE BOOL "MCUBOOT_DATA_SHARING" FORCE)
1616
set(PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT ON CACHE BOOL "PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT" FORCE)

components/security/freertos_ota_pal_psa/integration/patches/0004-app-version-Do-not-store-version-in-a-global-var.patch

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ index 7b38c6a..a44d284 100644
2929
@@ -33,24 +33,24 @@
3030
#include "FreeRTOS.h"
3131
#include "application_version.h"
32-
32+
3333
-AppVersion32_t appFirmwareVersion;
3434
-
3535
-int GetImageVersionPSA( psa_fwu_component_t uxComponent )
3636
+int GetImageVersionPSA( psa_fwu_component_t uxComponent, AppVersion32_t *pxVersion )
3737
{
3838
psa_fwu_component_info_t xComponentInfo = { 0 };
3939
psa_status_t uxStatus;
40-
40+
4141
+ configASSERT( pxVersion != NULL );
4242
+
4343
uxStatus = psa_fwu_query( uxComponent, &xComponentInfo );
@@ -48,7 +48,7 @@ index 7b38c6a..a44d284 100644
4848
- appFirmwareVersion.u.x.build = (uint16_t)xComponentInfo.version.build;
4949
+ pxVersion->u.x.major = xComponentInfo.version.major;
5050
+ pxVersion->u.x.minor = xComponentInfo.version.minor;
51-
+ pxVersion->u.x.build = (uint16_t)xComponentInfo.version.build;
51+
+ pxVersion->u.x.build = (uint16_t)xComponentInfo.version.patch;
5252
return 0;
5353
}
5454
else
@@ -64,7 +64,7 @@ index 7775910..fcd8b85 100644
6464
+++ b/version/application_version.h
6565
@@ -28,18 +28,17 @@
6666
#include "psa/update.h"
67-
67+
6868
/**
6969
- * @brief Get the running image version of the given component.
7070
- *
@@ -91,8 +91,8 @@ index 7775910..fcd8b85 100644
9191
+* @return 0 on success and -1 on failure.
9292
+*/
9393
+int GetImageVersionPSA( psa_fwu_component_t uxComponent, AppVersion32_t *pxVersion );
94-
94+
9595
#endif
96-
--
96+
--
9797
2.34.1
9898

0 commit comments

Comments
 (0)