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/manual.md
+12Lines changed: 12 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -245,6 +245,16 @@ The mapping has a number of attributes, which include:
245
245
**Note:** When a memory region is mapped into multiple protection
246
246
domains, the attributes used for different mappings may vary.
247
247
248
+
### Prefilling
249
+
250
+
A *memory region* may be prefilled with data from a file at build time
251
+
by specifying the file's name in the [System Description File]{#sysdesc}.
252
+
253
+
In this case, specifying the memory region's size become optional. If
254
+
a size isn't specified, the memory region will be sized by the length
255
+
of the prefill file, rounded up to the smallest page size or the user
256
+
specified page size.
257
+
248
258
## Channels {#channels}
249
259
250
260
A *channel* enables two protection domains to interact using protected procedures or notifications.
@@ -1018,6 +1028,7 @@ The `map` element has the following attributes:
1018
1028
*`cached`: (optional) Determines if mapped with caching enabled or disabled. Defaults to `true`.
1019
1029
*`setvar_vaddr`: (optional) Specifies a symbol in the program image. This symbol will be rewritten with the virtual address of the memory region.
1020
1030
*`setvar_size`: (optional) Specifies a symbol in the program image. This symbol will be rewritten with the size of the memory region.
1031
+
*`setvar_prefill_size`: (optional) Specifies a symbol in the program image. This symbol will be rewritten with the size of the prefilled data.
1021
1032
1022
1033
The `irq` element has the following attributes on ARM and RISC-V:
1023
1034
@@ -1093,6 +1104,7 @@ It supports the following attributes:
1093
1104
*`size`: Size of the memory region in bytes (must be a multiple of the page size)
1094
1105
*`page_size`: (optional) Size of the pages used in the memory region; must be a supported page size if provided. Defaults to the largest page size for the target architecture that the memory region is aligned to.
1095
1106
*`phys_addr`: (optional) The physical address for the start of the memory region (must be a multiple of the page size).
1107
+
*`prefill_path`: (optional) Path to a file containing data that the memory region will be filled with at boot.
1096
1108
1097
1109
The `memory_region` element does not support any child elements.
0 commit comments