soc: opentitan: update manifest format

Fix calculation of the app entry point.

Signed-off-by: nagendra modadugu <ngm@meta.com>
This commit is contained in:
nagendra modadugu 2024-03-12 10:03:55 -07:00 committed by Anas Nashif
commit 161c56fa31

View file

@ -6,16 +6,24 @@
#include <zephyr/toolchain.h> #include <zephyr/toolchain.h>
/* imports */ /* exports */
GTEXT(__start) GTEXT(__rom_header)
/* OpenTitan manifest consists of 896 bytes (224 words) containing signature, /* OpenTitan manifest consists of 1024 bytes (256 words) of manifest
* device ID, version info, etc. The test ROM ignores all of these fields * containing signature, device ID, version info, etc. The test ROM
* except for entry point (final word in manifest). * ignores all of these fields except for entry point.
*
* The layout below conforms to manifest version: 0x71c3 (major),
* 0x6c47 (minor). The manifest format is documented here:
* https://github.com/lowRISC/opentitan/blob/689a163294e1791bd30cfe096decf7f9233abad4/sw/host/opentitanlib/src/image/manifest.rs#L205
*/ */
SECTION_FUNC(rom_header, __rom_header) SECTION_FUNC(rom_header, __rom_header)
.rept(223) .rept(225)
.word 0 .word 0
.endr .endr
/* Entry point is relative to the beginning of manifest. */ /* Entry point is relative to the beginning of manifest. */
.word(__start - __rom_header) .word(__start - __rom_header)
/* Extensions entry table goes here. */
.rept(30)
.word 0
.endr