summaryrefslogtreecommitdiffhomepage
path: root/src/coreboot-start.c
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-06-29 18:11:56 +0200
committerAmlal El Mahrouss <amlal@nekernel.org>2025-06-29 18:11:56 +0200
commita16989ecbf4b1c4b3e471e706222c922b62e49bf (patch)
tree26c2b4720dbc5d9612acf8638ef4138ee6ee73fc /src/coreboot-start.c
parent19ffdc8218284937b1ac4fc8ef9a19a536b4a887 (diff)
fix: BSwap reivision on AArch64.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src/coreboot-start.c')
-rw-r--r--src/coreboot-start.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/coreboot-start.c b/src/coreboot-start.c
index 7a93744..eeeaabc 100644
--- a/src/coreboot-start.c
+++ b/src/coreboot-start.c
@@ -81,7 +81,13 @@ void cb_start_exec(void) {
*/
if (boot_hdr->h_mag[0] == CB_BOOT_MAG_0 && boot_hdr->h_mag[1] == CB_BOOT_MAG_1) {
- if (boot_hdr->h_revision != CB_BOOT_VER) {
+ uint32_t rev = boot_hdr->h_revision;
+
+#ifdef __aarch64__
+ rev = __builtin_bswap32(rev);
+#endif
+
+ if (rev != CB_BOOT_VER) {
if (hart == 0) {
cb_put_string("CB> Can't Boot the StageTwo, LX invalid signature. (CB0003)\r\n");
}