Skip to content

Commit d192005

Browse files
ahasztagtomchy
authored andcommitted
suit: Add manifest-based recovery method
Modifications to the build system to support running the app_recovery manifest without a recovery image. Signed-off-by: Artur Hadasz <[email protected]>
1 parent 5a3e639 commit d192005

File tree

5 files changed

+16
-11
lines changed

5 files changed

+16
-11
lines changed

cmake/sysbuild/suit.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ function(suit_register_post_build_commands)
3939
list(APPEND dependencies "${BINARY_DIR}/zephyr/${BINARY_FILE}.bin")
4040
endforeach()
4141

42-
if(SB_CONFIG_SUIT_BUILD_RECOVERY)
42+
if(SB_CONFIG_SUIT_BUILD_RECOVERY AND NOT SB_CONFIG_SUIT_RECOVERY_APPLICATION_NONE)
4343
list(APPEND dependencies recovery)
4444
endif()
4545

sysbuild/Kconfig.suit

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,11 @@ config SUIT_RECOVERY_APPLICATION_DEFAULT
184184
help
185185
Use the default recovery application using BluetoothLE and SMP.
186186

187+
config SUIT_RECOVERY_APPLICATION_NONE
188+
bool "Do not build the recovery application"
189+
help
190+
Provide a recovery manifest, but do not build a recovery application.
191+
187192
endchoice
188193

189194
choice SUIT_RECOVERY_APPLICATION_IMAGE_MANIFEST

sysbuild/suit.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ if(SB_CONFIG_SUIT_BUILD_FLASH_COMPANION)
2020
)
2121
endif()
2222

23-
if(SB_CONFIG_SUIT_BUILD_RECOVERY)
23+
if(SB_CONFIG_SUIT_BUILD_RECOVERY AND NOT SB_CONFIG_SUIT_RECOVERY_APPLICATION_NONE)
2424
# Calculate the network board target
2525
string(REPLACE "/" ";" split_board_qualifiers "${BOARD_QUALIFIERS}")
2626
list(GET split_board_qualifiers 1 target_soc)

sysbuild/suit_provisioning/Kconfig.nrf54h20

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ manifest-independent-updates=y
4545
manifest-signature-check=DISABLED
4646
manifest-mpi-offset=0x2030
4747

48-
menuconfig SUIT_MPI_$(manifest)
48+
menuconfig SUIT_MPI_$(manifest)
4949
bool "Application recovery manifest configuration"
5050
default y if SUIT_BUILD_RECOVERY
5151

@@ -58,7 +58,7 @@ manifest-independent-updates=n
5858
manifest-signature-check=DISABLED
5959
manifest-mpi-offset=0x2060
6060

61-
menuconfig SUIT_MPI_$(manifest)
61+
menuconfig SUIT_MPI_$(manifest)
6262
bool "Application local (1) manifest configuration"
6363
default y
6464

@@ -71,7 +71,7 @@ manifest-independent-updates=n
7171
manifest-signature-check=DISABLED
7272
manifest-mpi-offset=0x2090
7373

74-
menuconfig SUIT_MPI_$(manifest)
74+
menuconfig SUIT_MPI_$(manifest)
7575
bool "Application local (2) manifest configuration"
7676

7777
rsource "Kconfig.template.manifest_config"
@@ -83,7 +83,7 @@ manifest-independent-updates=n
8383
manifest-signature-check=DISABLED
8484
manifest-mpi-offset=0x20c0
8585

86-
menuconfig SUIT_MPI_$(manifest)
86+
menuconfig SUIT_MPI_$(manifest)
8787
bool "Application local (3) manifest configuration"
8888
default y if SUIT_RECOVERY_APPLICATION_IMAGE_MANIFEST_APP_LOCAL_3
8989

@@ -113,9 +113,9 @@ manifest-independent-updates=n
113113
manifest-signature-check=DISABLED
114114
manifest-mpi-offset=0x1000
115115

116-
menuconfig SUIT_MPI_$(manifest)
116+
menuconfig SUIT_MPI_$(manifest)
117117
bool "Radio recovery manifest configuration"
118-
default y if SUIT_BUILD_RECOVERY
118+
default y if SUIT_BUILD_RECOVERY && !SUIT_RECOVERY_APPLICATION_NONE
119119

120120
rsource "Kconfig.template.manifest_config"
121121

@@ -126,7 +126,7 @@ manifest-independent-updates=n
126126
manifest-signature-check=DISABLED
127127
manifest-mpi-offset=0x1030
128128

129-
menuconfig SUIT_MPI_$(manifest)
129+
menuconfig SUIT_MPI_$(manifest)
130130
bool "Radio local (1) manifest configuration"
131131
default y
132132

@@ -139,7 +139,7 @@ manifest-independent-updates=n
139139
manifest-signature-check=DISABLED
140140
manifest-mpi-offset=0x1060
141141

142-
menuconfig SUIT_MPI_$(manifest)
142+
menuconfig SUIT_MPI_$(manifest)
143143
bool "Radio local (2) manifest configuration"
144144

145145
rsource "Kconfig.template.manifest_config"

sysbuild/suit_provisioning/Kconfig.nrf9280

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ manifest-mpi-offset=0x2000
111111

112112
menuconfig SUIT_MPI_$(manifest)
113113
bool "Radio recovery manifest configuration"
114-
default y if SUIT_BUILD_RECOVERY
114+
default y if SUIT_BUILD_RECOVERY && !SUIT_RECOVERY_APPLICATION_NONE
115115

116116
rsource "Kconfig.template.manifest_config"
117117

0 commit comments

Comments
 (0)