diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-03-15 08:36:41 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-03-15 08:36:41 +0100 |
commit | 83be46e944f630fde26ce03cb93f61a3066448e3 (patch) | |
tree | d94a48051f9311d99b615fa06adda2511f9cff2d /arch/mips/boot/compressed/decompress.c | |
parent | f8096ff38d5f62d8a2c473e1bec0163a1b2b86d8 (diff) | |
parent | 1e28eed17697bcf343c6743f0028cc3b5dd88bf0 (diff) | |
download | linux-83be46e944f630fde26ce03cb93f61a3066448e3.tar.bz2 |
Merge v5.12-rc3 into char-misc-next
We need the char/misc fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/mips/boot/compressed/decompress.c')
-rw-r--r-- | arch/mips/boot/compressed/decompress.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/mips/boot/compressed/decompress.c b/arch/mips/boot/compressed/decompress.c index e3946b06e840..3d70d15ada28 100644 --- a/arch/mips/boot/compressed/decompress.c +++ b/arch/mips/boot/compressed/decompress.c @@ -14,6 +14,7 @@ #include <asm/addrspace.h> #include <asm/unaligned.h> +#include <asm-generic/vmlinux.lds.h> /* * These two variables specify the free mem region @@ -120,6 +121,13 @@ void decompress_kernel(unsigned long boot_heap_start) /* last four bytes is always image size in little endian */ image_size = get_unaligned_le32((void *)&__image_end - 4); + /* The device tree's address must be properly aligned */ + image_size = ALIGN(image_size, STRUCT_ALIGNMENT); + + puts("Copy device tree to address "); + puthex(VMLINUX_LOAD_ADDRESS_ULL + image_size); + puts("\n"); + /* copy dtb to where the booted kernel will expect it */ memcpy((void *)VMLINUX_LOAD_ADDRESS_ULL + image_size, __appended_dtb, dtb_size); |