Skip to content

Commit fd9f0cd

Browse files
committed
Release v1.2.0
1 parent 325ccce commit fd9f0cd

File tree

100 files changed

+417
-73
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

100 files changed

+417
-73
lines changed

Include/stm32_secure_patching_bootloader_interface_v1.1.0.h renamed to Include/stm32_secure_patching_bootloader_interface_v1.2.0.h

Lines changed: 77 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
******************************************************************************
66
*/
77
/*
8-
* Copyright (c) 2021 Firmware Modules Inc.
8+
* Copyright (c) 2021-2022 Firmware Modules Inc.
99
*
1010
* Permission is hereby granted, free of charge, to any person obtaining a copy
1111
* of this software and associated documentation files(the "Software"), to deal
@@ -51,34 +51,53 @@ typedef enum
5151
} SE_StatusTypeDef;
5252

5353
/*!
54-
* Provides services for applications to update firmware in accordance with
55-
* the Firmware Modules' Application Management and Deployment Model.
56-
*
57-
* The application (APP) and manufacturing test application (MTA) sections in
58-
* the target non-volatile storage may be updated by presenting an update firmware
59-
* image that was generated with FM_Release. The Update module takes care of
60-
* choosing the correct APP section (APP1 or APP2) so as to support over-the-air
61-
* streaming firmware updating that is highly tolerant to link or device failure -
54+
* Provides services to access bootloader and application versions, perform
55+
* in-application firmware updates and access the user-provisioned OTP secure data area.
56+
*
57+
* The patching engine is the core of the stm32-secure-patching-bootloader firmware
58+
* update system. It supports over-the-air streaming in-application firmware updating
59+
* that is highly tolerant to link or device failure -
6260
* the target device's running application remains safe at all times during this
63-
* process.
64-
*
65-
* Update APIs will NOT update firmware to older versions. If an older version (i.e. a 'downgrade')
66-
* is required, the changes must be reverted/implemented then built with a new version number.
67-
* The Update and AMDM system uses only the version number to determine which application
68-
* to boot and which application to overwrite when updating.
69-
*
70-
* The Update module does not maintain its own RAM buffer but rather utilizes
71-
* the buffers provided by existing packet transport infrastructure. The only
72-
* requirement on these buffers is that the *first* buffer provided must contain
73-
* at least {@link #getMinUpdateImageDataLen} bytes. This value is platform
74-
* dependent, therefore transport buffer sizing must take this value into account as well.
75-
* The first buffer must contain enough bytes to verify that a firmware image is
76-
* indeed being supplied to the update engine. The actual firmware image length is
77-
* extracted from the content of the first buffer supplied to {@link #data}.
61+
* process thanks to the dual slot architecture.
62+
*
63+
* Patching engine APIs (SE_PATCH_) are designed to process Secure Firmware Binary (.sfb)
64+
* or Secure Firmware Binary Patch (.sfbp) files generated by the
65+
* stm32-secure-patching-bootloader build system. The user is required to pass the
66+
* file binary data in arbitrarily sized chunks through the Data() API.
67+
*
68+
* Full-image .sfb files contain the entire new firmware update image and therefore
69+
* updates can be performed to any available newer version.
70+
* Patch files .sfbp, on the other hand, only contain the differences between the
71+
* current version on the device and the new version. Consequently, patch files
72+
* only work if the required "from" version already exists on the device with a
73+
* fully matching SHA256 digest. Attempting an update with an incorrect patch file
74+
* has no effect on the system or running application - the patch file is immediately rejected
75+
* due to "from" version or SHA256 mismatch (fields digitally signed in the file header).
76+
* The choice of using full or patch file update images depends
77+
* on delivery method bandwidth constraints and how much attention is paid
78+
* to the firmware release and delivery process in your organization.
79+
*
80+
* The patching engine will NOT update firmware to older versions (security feature).
81+
* If an older version (i.e. a 'downgrade') is required, the changes must be
82+
* reverted/implemented then built with a new version number.
83+
*
84+
* The patching engine utilizes the buffers provided by the caller of the Data() API.
85+
* There are no requirements on these buffers - they can contain as little as 1 byte
86+
* of .sfb or .sfbp file data per invocation.
87+
*
88+
* The system employs multiple protections to ensure it is virtually impossible to
89+
* inject wrong or malformed firmware update binary data and cause fault or failure in the
90+
* system. Digital signatures with SHA256 integrity checking ensure correctness of binary data.
7891
*
7992
* @a(Security Policies)
80-
* It is strongly advised to use a secure transport for data (for both commands and firmware images)
81-
* provided over the air to the APIs in this module.
93+
* Firmware images are protected from tampering (digitally signed) and from IP theft
94+
* (encrypted). The methods selected to transport the firmware update images (.sfb, .sfbp)
95+
* are not required to be secured and can be user-distributed (e.g. from a public web page).
96+
* Chip-level readout protection (RDP level 2) option byte is recommended to be
97+
* programmed for production devices to protect the digital signature public key (ECDSA) and
98+
* the decryption private key (AES).
99+
* Production versions of the stm32-secure-patching-bootloader enforce chip-level readout
100+
* protection (RDP level 2) at each startup to help protect against possible physical attack vectors.
82101
*
83102
* @a(Thread Safety)
84103
* The APIs in this module are NOT thread-safe
@@ -112,6 +131,11 @@ typedef enum
112131
* @value(StatusCode_INVALID_ORDER) Supplied data with incorrect order for the current state
113132
* @value(StatusCode_TOO_FEW_BYTES) Supplied first data packet with less than minimum required bytes
114133
* @value(StatusCode_PARSER_ERROR) Update container format parser has encountered an unrecoverable error in the byte stream
134+
* @value(StatusCode_DECRYPTION_ERROR) Update container format stream decryption has failed
135+
* @value(StatusCode_INSTALL_ERROR) Error finalizing the newly written firmware in download slot (automatically or through SE_PATCH_InstallAtNextReset)
136+
* @value(StatusCode_FLASH_ERROR) Flash (possibly external) initialization error
137+
* @value(StatusCode_FLASH_SEGMENT_ERROR) Error initializing the SEGMENT read layer for external flash MultiSegment feature
138+
* @value(StatusCode_FLASH_CIPHER_ERROR) Error initializing the CIPHER write layer for external flash MultiSegment feature
115139
*/
116140
typedef enum
117141
{
@@ -146,9 +170,9 @@ typedef enum
146170

147171

148172
/*!
149-
* High-level AMDM image types.
173+
* High-level patching engine image types.
150174
*
151-
* These are the types of firmware images that may be presented to the Update module.
175+
* These are the types of firmware images that may be presented to the patching engine.
152176
*/
153177
typedef enum
154178
{
@@ -175,7 +199,7 @@ typedef enum
175199
/*!
176200
* Update start setup data structure.
177201
*
178-
* @field(type) Target update location of firmware image presented to Update module.
202+
* @field(type) Target update location of firmware image presented to patching engine.
179203
* This field may be set if known, or may be omitted (set to NONE) to use the firmware update image's
180204
* embedded type determined on-the-fly.
181205
* @field(rebootDelay) Specify the reboot delay that is to occur after a completed firmware update.
@@ -286,6 +310,7 @@ SE_ErrorStatus SE_PATCH_Init(SE_PATCH_Status* p_PatchStatus, const SE_PATCH_Star
286310

287311
/*!
288312
* Supply a portion of a stream of data to the firmware patching engine.
313+
* Accepts byte streams from .sfb or .sfbp files.
289314
*
290315
* This function blocks until the operation is completed which may consist of one or both of:
291316
* @p(blist)
@@ -294,17 +319,18 @@ SE_ErrorStatus SE_PATCH_Init(SE_PATCH_Status* p_PatchStatus, const SE_PATCH_Star
294319
* @p
295320
*
296321
* No action is taken against the non-volatile storage unless the provided
297-
* data was verified to contain the start of a valid firmware image.
322+
* data was verified to contain the start of a valid firmware image whose
323+
* signature verifies correctly by the public signing key embedded in the
324+
* on-board stm32-secure-patching-bootloader. In the case of a patch file (.sfbp)
325+
* the 'source' firmware's - that is, the firmware already on the device - sha256 tag must also match.
298326
*
299-
* There is a requirement for data ordering - the first
300-
* {@link #getMinUpdateImageDataLen} bytes must be sent first and available as a unit
301-
* to the `data` function. These bytes contain enough information for the updater
302-
* to make a decision on whether to proceed. All subsequent bytes of the
303-
* firmware update image must also be delivered in order.
327+
* There is no requirement on how many bytes can be delivered in each Data invocation:
328+
* as little as 1 byte can be supplied and there is no upper limit other than the
329+
* size of the buffer the application can supply.
304330
*
305331
* Additionally, the count of bytes is accumulated until the expected number
306332
* of bytes is received, at which time the written firmware image will be fully verified.
307-
* There is no protection against duplicate data packets.
333+
* Any subsequent bytes will be ignored.
308334
*
309335
* @param(status) Supplied structure to be filled in with detailed API result status.
310336
* @param(data) Pointer to firmware image data buffer
@@ -356,8 +382,8 @@ SE_ErrorStatus SE_PATCH_InstallAtNextReset(SE_PATCH_Status* status);
356382
* the non-volatile memory can be detected by inspecting the returned status codes:
357383
* @p(blist)
358384
* - StatusCode_SECTION_ERASE_FAILURE: could not invalidate image.
359-
* if an image was successfully written, upon next reboot it will be
360-
* booted, but only if it verifies successfully by the bootloader
385+
* if an image was successfully written, upon next reboot the bootloader will
386+
* attempt to install it but only if it verifies successfully.
361387
* (otherwise the currently running firmware image is booted again).
362388
* @p
363389
* @param(status) Supplied structure to be filled in with detailed API result status.
@@ -423,6 +449,19 @@ typedef struct
423449
#define FW_VERSION_PATCH(x) (((uint32_t)(x) >> 0) & 0x000000FF)
424450

425451
SE_ErrorStatus SE_APP_GetActiveFwInfo(SE_StatusTypeDef* peSE_Status, SE_APP_ActiveFwInfo* p_FwInfo);
452+
453+
/* Copy the pre-provisoned secure user data into the provided pointer buffer.
454+
* This is an OTP area inside the bootloader flash area containing a maximum of 128 bytes.
455+
*/
426456
SE_ErrorStatus SE_APP_GetSecureUserData(SE_StatusTypeDef* peSE_Status, void* p_Data, uint32_t len);
427457

458+
/* Get the bootloader version as a string in the format "v<major>.<minor>.<patch>" e.g. "v1.2.0"
459+
* The buffer is always null-terminated when the function returns.
460+
* A user buffer of at least 16 bytes is suggested. A buffer smaller than the bootloader version string length
461+
* will simply contain a truncated null-terminated string.
462+
*
463+
* @param p_Data buffer to copy bootloader version string into.
464+
* @param len length of provided buffer.
465+
*/
466+
SE_ErrorStatus SE_APP_GetBootVer(SE_StatusTypeDef* peSE_Status, char* p_Data, uint32_t len);
428467

Libs/NUCLEO-L073RZ/stm32-secure-patching-bootloader-linker-gcc_NUCLEO-L073RZ_v1.1.0.ld renamed to Libs/B-L072Z-LRWAN1/stm32-secure-patching-bootloader-linker-gcc_B-L072Z-LRWAN1_v1.2.0.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021 Firmware Modules Inc.
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
33
*
44
* Permission is hereby granted, free of charge, to any person obtaining a copy
55
* of this software and associated documentation files(the "Software"), to deal
@@ -34,4 +34,4 @@ STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_END = 0x0801EFFF;
3434
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20001500;
3535

3636
SE_IF_REGION_ROM_START = 0x8006E00;
37-
SE_IF_REGION_ROM_LENGTH = 0xB00;
37+
SE_IF_REGION_ROM_LENGTH = 0xC00;

Libs/B-L072Z-LRWAN1/stm32-secure-patching-bootloader_B-L072Z-LRWAN1_v1.1.0.bin.asc

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
c9aa6f1116174b0bd1d3105ffe6c0513d4b557c1d5014664a008660529e1dcab stm32-secure-patching-bootloader_B-L072Z-LRWAN1_v1.2.0.bin

Libs/DISCO-F769I/stm32-secure-patching-bootloader-linker-gcc_DISCO-F769I_v1.1.0.ld renamed to Libs/DISCO-F769I/stm32-secure-patching-bootloader-linker-gcc_DISCO-F769I_v1.2.0.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021 Firmware Modules Inc.
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
33
*
44
* Permission is hereby granted, free of charge, to any person obtaining a copy
55
* of this software and associated documentation files(the "Software"), to deal
@@ -36,4 +36,4 @@ STM32_SECURE_PATCHING_BOOTLOADER_MULTISEG_START = 0x90000000;
3636
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20022700;
3737

3838
SE_IF_REGION_ROM_START = 0x8008800;
39-
SE_IF_REGION_ROM_LENGTH = 0xB00;
39+
SE_IF_REGION_ROM_LENGTH = 0xC00;

Libs/DISCO-F769I/stm32-secure-patching-bootloader_DISCO-F769I_v1.1.0.bin.asc

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
633c13455a7a290b24f2b992bdeb4879f8a1a9c27947a1c0d588254a4648e9b8 stm32-secure-patching-bootloader_DISCO-F769I_v1.2.0.bin
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Board configuration
2+
3+
/* Configuration for 1 MB flash device, NO QSPI
4+
*
5+
* internal sector size: 2K
6+
* SBSFU is around 71K fully loaded with ALL debug output
7+
*
8+
* ------------------------------------------------------------------------
9+
* | SBSFU | SLOT0 | SLOT1 | ... |
10+
* ------------------------------------------------------------------------
11+
* 80 256 256
12+
*
13+
* 0x08000000
14+
* 0x08014000
15+
* 0x08054000
16+
* 0x08094000
17+
* 0x90400000
18+
*/
19+
20+
YMODEM loader: YES
21+
UART2 115200,8,N,1
22+
23+
USB flash loader: YES
24+
25+
Note: built for REVB or REVC MB1184.
26+

Libs/DISCO-L496G/stm32-secure-patching-bootloader-linker-gcc_DISCO-L496G_v1.1.0.ld renamed to Libs/DISCO-L476G/stm32-secure-patching-bootloader-linker-gcc_DISCO-L476G_v1.2.0.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021 Firmware Modules Inc.
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
33
*
44
* Permission is hereby granted, free of charge, to any person obtaining a copy
55
* of this software and associated documentation files(the "Software"), to deal
@@ -34,4 +34,4 @@ STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_END = 0x08053FFF;
3434
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20001700;
3535

3636
SE_IF_REGION_ROM_START = 0x8007500;
37-
SE_IF_REGION_ROM_LENGTH = 0xB00;
37+
SE_IF_REGION_ROM_LENGTH = 0xC00;
Binary file not shown.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
672088883eb2c14f1b63b80f6c9a4be8fac1363d3630e998d795addd98ec432b stm32-secure-patching-bootloader_DISCO-L476G_v1.2.0.bin
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Board configuration
2+
3+
/* Configuration for 1 MB flash device, NO QSPI
4+
*
5+
* internal sector size: 2K
6+
* SBSFU is around 71K fully loaded with ALL debug output
7+
*
8+
* ------------------------------------------------------------------------
9+
* | SBSFU | SLOT0 | SLOT1 | ... |
10+
* ------------------------------------------------------------------------
11+
* 80 256 256
12+
*
13+
* 0x08000000
14+
* 0x08014000
15+
* 0x08054000
16+
* 0x08094000
17+
* 0x90400000
18+
*
19+
*/
20+
21+
YMODEM loader: YES
22+
UART2 115200,8,N,1
23+
24+
USB flash loader: YES
25+
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
/*
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
3+
*
4+
* Permission is hereby granted, free of charge, to any person obtaining a copy
5+
* of this software and associated documentation files(the "Software"), to deal
6+
* in the Software without restriction, including without limitation the rights
7+
* to use, copy, modify, merge, publish, distribute, sublicense, and /or sell
8+
* copies of the Software, and to permit persons to whom the Software is
9+
* furnished to do so, subject to the following conditions :
10+
*
11+
* The above copyright notice and this permission notice shall be included in all
12+
* copies or substantial portions of the Software.
13+
*
14+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15+
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16+
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17+
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18+
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19+
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
20+
* OR OTHER DEALINGS IN THE SOFTWARE.
21+
*/
22+
23+
/* !! DO NOT MODIFY !!
24+
*
25+
* These are linker script constants that applications must use to successfully
26+
* interface with the stm32-secure-patching-bootloader of the same version.
27+
*/
28+
29+
VECTOR_SIZE = 0x200;
30+
31+
STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_START = 0x08014000;
32+
STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_END = 0x08053FFF;
33+
34+
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20001700;
35+
36+
SE_IF_REGION_ROM_START = 0x8007500;
37+
SE_IF_REGION_ROM_LENGTH = 0xC00;

Libs/DISCO-L496G/stm32-secure-patching-bootloader_DISCO-L496G_v1.1.0.bin.asc

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
79dab86d6ae0586b4400b9e562b57fa56c6367b0ddda900c6487abd5e5e95117 stm32-secure-patching-bootloader_DISCO-L496G_v1.2.0.bin

Libs/LORA-E5-DEV/stm32-secure-patching-bootloader-linker-gcc_LORA-E5-DEV_v1.1.0.ld renamed to Libs/LORA-E5-DEV/stm32-secure-patching-bootloader-linker-gcc_LORA-E5-DEV_v1.2.0.ld

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021 Firmware Modules Inc.
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
33
*
44
* Permission is hereby granted, free of charge, to any person obtaining a copy
55
* of this software and associated documentation files(the "Software"), to deal
@@ -33,5 +33,5 @@ STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_END = 0x080257FF;
3333

3434
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20001500;
3535

36-
SE_IF_REGION_ROM_START = 0x8006500;
37-
SE_IF_REGION_ROM_LENGTH = 0xB00;
36+
SE_IF_REGION_ROM_START = 0x8006600;
37+
SE_IF_REGION_ROM_LENGTH = 0xC00;

Libs/LORA-E5-DEV/stm32-secure-patching-bootloader_LORA-E5-DEV_v1.1.0.bin.asc

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
d70d33d699e09c850b7a014270fbeefa89e5d52f2a363e0a401169fa5ad5c176 stm32-secure-patching-bootloader_LORA-E5-DEV_v1.2.0.bin

Libs/NUCLEO-F429ZI/stm32-secure-patching-bootloader-linker-gcc_NUCLEO-F429ZI_v1.1.0.ld renamed to Libs/NUCLEO-F429ZI/stm32-secure-patching-bootloader-linker-gcc_NUCLEO-F429ZI_v1.2.0.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021 Firmware Modules Inc.
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
33
*
44
* Permission is hereby granted, free of charge, to any person obtaining a copy
55
* of this software and associated documentation files(the "Software"), to deal
@@ -34,4 +34,4 @@ STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_END = 0x0805FFFF;
3434
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20002700;
3535

3636
SE_IF_REGION_ROM_START = 0x8006600;
37-
SE_IF_REGION_ROM_LENGTH = 0xB00;
37+
SE_IF_REGION_ROM_LENGTH = 0xC00;

Libs/NUCLEO-F429ZI/stm32-secure-patching-bootloader_NUCLEO-F429ZI_v1.1.0.bin.asc

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ac1736bf25d62b7518f9af3486ea2f4c3c0413cadd86329c4073129b905e1002 stm32-secure-patching-bootloader_NUCLEO-F429ZI_v1.2.0.bin

Libs/B-L072Z-LRWAN1/stm32-secure-patching-bootloader-linker-gcc_B-L072Z-LRWAN1_v1.1.0.ld renamed to Libs/NUCLEO-L073RZ/stm32-secure-patching-bootloader-linker-gcc_NUCLEO-L073RZ_v1.2.0.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021 Firmware Modules Inc.
2+
* Copyright (c) 2021-2022 Firmware Modules Inc.
33
*
44
* Permission is hereby granted, free of charge, to any person obtaining a copy
55
* of this software and associated documentation files(the "Software"), to deal
@@ -34,4 +34,4 @@ STM32_SECURE_PATCHING_BOOTLOADER_SLOT0_END = 0x0801EFFF;
3434
STM32_SECURE_PATCHING_BOOTLOADER_RAM_START = 0x20001500;
3535

3636
SE_IF_REGION_ROM_START = 0x8006E00;
37-
SE_IF_REGION_ROM_LENGTH = 0xB00;
37+
SE_IF_REGION_ROM_LENGTH = 0xC00;
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Board-specific properties injected into the postbuild.sh script.
2+
3+
VectOffset=512
4+
5+
MultiSegAddr=0

Libs/NUCLEO-L073RZ/stm32-secure-patching-bootloader_NUCLEO-L073RZ_v1.1.0.bin.asc

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
7ef5a91bfd4e5145ba89af7b3230ee75a7af4c28e2f29fec838a005a54ef1946 stm32-secure-patching-bootloader_NUCLEO-L073RZ_v1.2.0.bin

0 commit comments

Comments
 (0)