firmware: Fix source fdt alignment
authorXiang Wang <wxjstz@126.com>
Tue, 2 Apr 2019 08:57:22 +0000 (16:57 +0800)
committerAnup Patel <anup@brainfault.org>
Thu, 4 Apr 2019 03:40:28 +0000 (09:10 +0530)
When I tried to start opensbi with coreboot, I found that aligning to a 16-byte
boundary would make a copy error.

Corrected to align to an machine word length boundary.

Signed-off-by: Xiang Wang <wxjstz@126.com>
firmware/fw_base.S

index aed0917..7897314 100644 (file)
@@ -119,7 +119,7 @@ _prev_arg1_override_done:
         */
        beqz    a1, _fdt_reloc_done
        /* Mask values in a3 and a4 */
-       li      a3, ~0xf
+       li      a3, ~(__SIZEOF_POINTER__ - 1)
        li      a4, 0xff
        /* t1 = destination FDT start address */
        add     s0, a0, zero