You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Targets.md
+45-44Lines changed: 45 additions & 44 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,41 @@
1
1
# Targets
2
2
3
+
## STM32-F407
4
+
5
+
Example 512KB partitioning on STM32-F407
6
+
7
+
The example firmware provided in the `test-app` is configured to boot from the primary partition
8
+
starting at address 0x20000. The flash layout is provided by the default example using the following
9
+
configuration in `target.h`:
10
+
11
+
```C
12
+
#defineWOLFBOOT_SECTOR_SIZE 0x20000
13
+
#defineWOLFBOOT_PARTITION_SIZE 0x20000
14
+
15
+
#defineWOLFBOOT_PARTITION_BOOT_ADDRESS 0x20000
16
+
#define WOLFBOOT_PARTITION_UPDATE_ADDRESS 0x40000
17
+
#define WOLFBOOT_PARTITION_SWAP_ADDRESS 0x60000
18
+
```
19
+
20
+
This results in the following partition configuration:
21
+
22
+

23
+
24
+
This configuration demonstrates one of the possible layouts, with the slots
25
+
aligned to the beginning of the physical sector on the flash.
26
+
27
+
The entry point for all the runnable firmware images on this target will be `0x20100`,
28
+
256 Bytes after the beginning of the first flash partition. This is due to the presence
29
+
of the firmware image header at the beginning of the partition, as explained more in details
30
+
in [Firmware image](firmware_image.md)
31
+
32
+
In this particular case, due to the flash geometry, the swap space must be as big as 64KB, to account for proper sector swapping between the two images.
33
+
34
+
On other systems, the SWAP space can be as small as 512B, if multiple smaller flash blocks are used.
35
+
36
+
More information about the geometry of the flash and in-application programming (IAP) can be found in the manufacturer manual of each target device.
37
+
38
+
3
39
## SiFive HiFive1 RISC-V
4
40
5
41
### Features
@@ -19,7 +55,7 @@ Start Address: 0x20010000
19
55
20
56
### wolfBoot configuration
21
57
22
-
The default wolfBoot configuration will add a second stage bootloader, leaving the stock "double tap" bootloader for safety.
58
+
The default wolfBoot configuration will add a second stage bootloader, leaving the stock "double tap" bootloader as a fallback for recovery. Your production implementation should replace this and partition addresses in `target.h` will need updated, so they are `0x10000` less.
23
59
24
60
For testing wolfBoot here are the changes required:
25
61
@@ -45,14 +81,15 @@ For testing wolfBoot here are the changes required:
The example firmware provided in the `test-app` is configured to boot from the primary partition
92
-
starting at address 0x20000. The flash layout is provided by the default example using the following
93
-
configuration in `target.h`:
94
-
95
-
```C
96
-
#defineWOLFBOOT_SECTOR_SIZE 0x20000
97
-
#defineWOLFBOOT_PARTITION_SIZE 0x20000
98
-
99
-
#defineWOLFBOOT_PARTITION_BOOT_ADDRESS 0x20000
100
-
#define WOLFBOOT_PARTITION_UPDATE_ADDRESS 0x40000
101
-
#define WOLFBOOT_PARTITION_SWAP_ADDRESS 0x60000
102
118
```
103
-
104
-
This results in the following partition configuration:
105
-
106
-

107
-
108
-
This configuration demonstrates one of the possible layouts, with the slots
109
-
aligned to the beginning of the physical sector on the flash.
110
-
111
-
The entry point for all the runnable firmware images on this target will be `0x20100`,
112
-
256 Bytes after the beginning of the first flash partition. This is due to the presence
113
-
of the firmware image header at the beginning of the partition, as explained more in details
114
-
in [Firmware image](firmware_image.md)
115
-
116
-
In this particular case, due to the flash geometry, the swap space must be as big as 64KB, to account for proper sector swapping between the two images.
117
-
118
-
On other systems, the SWAP space can be as small as 512B, if multiple smaller flash blocks are used.
119
-
120
-
More information about the geometry of the flash and in-application programming (IAP) can be found in the manufacturer manual of each target device.
0 commit comments