aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/kernel/image.h
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-03-30 11:43:07 -0400
committerWill Deacon <will.deacon@arm.com>2016-04-14 13:11:30 -0400
commit546c8c44f092b2f23291fe499c221efc8cabbb67 (patch)
treee778a9304a332f72f505490ed19d9178fd3b3541 /arch/arm64/kernel/image.h
parent2c09ec06bc39fc85a2b3856524348c301def27af (diff)
arm64: move early boot code to the .init segment
Apart from the arm64/linux and EFI header data structures, there is nothing in the .head.text section that must reside at the beginning of the Image. So let's move it to the .init section where it belongs. Note that this involves some minor tweaking of the EFI header, primarily because the address of 'stext' no longer coincides with the start of the .text section. It also requires a couple of relocated symbol references to be slightly rewritten or their definition moved to the linker script. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel/image.h')
-rw-r--r--arch/arm64/kernel/image.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm64/kernel/image.h b/arch/arm64/kernel/image.h
index 5e360ce88f10..4fd72da646a3 100644
--- a/arch/arm64/kernel/image.h
+++ b/arch/arm64/kernel/image.h
@@ -71,8 +71,12 @@
71 DEFINE_IMAGE_LE64(_kernel_offset_le, TEXT_OFFSET); \ 71 DEFINE_IMAGE_LE64(_kernel_offset_le, TEXT_OFFSET); \
72 DEFINE_IMAGE_LE64(_kernel_flags_le, __HEAD_FLAGS); 72 DEFINE_IMAGE_LE64(_kernel_flags_le, __HEAD_FLAGS);
73 73
74kernel_img_size = _end - (_text - TEXT_OFFSET);
75
74#ifdef CONFIG_EFI 76#ifdef CONFIG_EFI
75 77
78__efistub_stext_offset = stext - _text;
79
76/* 80/*
77 * Prevent the symbol aliases below from being emitted into the kallsyms 81 * Prevent the symbol aliases below from being emitted into the kallsyms
78 * table, by forcing them to be absolute symbols (which are conveniently 82 * table, by forcing them to be absolute symbols (which are conveniently